d3d8vertexbuffer.cpp

来自「game code对于游戏地图的编辑代码」· C++ 代码 · 共 31 行

CPP
31
字号
#include "D3D8VertexBuffer.h"
#include "../../Main/QVertexIndexData.h"
#include "../../Main/QVisualSysOptions.h"
#include "D3DMapping.h"

#include "../../Main/QLogManager.h"

D3D8VertexBuffer::D3D8VertexBuffer(LPDIRECT3DDEVICE8 device,VertexData* vd)
{
	if( FAILED( device->CreateVertexBuffer( GetVDTSize(vd->vertex_type) * vd->vertex_count,
		D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY, 0,
		D3DPOOL_DEFAULT,&m_pVertexBuffer) ))
	{
		LOGLOW("D3D8VertexBuffer::D3D8VertexBuffer : Cannot create vertex Buffer");
		return;
	}
	void* pvertices;
	if( FAILED( m_pVertexBuffer->Lock(0,0,(BYTE**)(&pvertices),0) ))
	{
		LOGLOW("D3D8VertexBuffer::D3D8VertexBuffer : Cannot Lock Buffer");
		return;
	}
	memcpy(pvertices,vd->vertex_data,GetVDTSize(vd->vertex_type) * vd->vertex_count);
	m_pVertexBuffer->Unlock();
}

D3D8VertexBuffer::~D3D8VertexBuffer()
{
	m_pVertexBuffer->Release();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?