|
发表于 2003-12-9 21:09:00
|
显示全部楼层
Re:dx9中用d3d画直线的问题
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ|D3DFVF_DIFFUSE)
struct CUSTOMVERTEX
{
FLOAT x, y, z; // 顶点坐标
DWORD color; // 顶点颜色
};
LPDIRECT3DVERTEXBUFFER9 lpVB;
CUSTOMVERTEX* pVertices = NULL;
m_pDevice->CreateVertexBuffer(2*sizeof(CUSTOMVERTEX),0,D3DFVF_CUSTOMVERTEX,
D3DPOOL_DEFAULT,&lpVB,NULL);
lpVB->Lock(0,0,(void**)&pVertices,0);
pVertices[0].x=0.0f;
pVertices[0].y=0.0f;
pVertices[0].z=0.0f;
pVertices[0].color=0xffffffff;
pVertices[1].x=100.0f;
pVertices[1].y=100.0f;
pVertices[1].z=100.0f;
pVertices[1].color=0xffffffff;
lpVB->Unlock();
m_pDevice->Clear(0,NULL,D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,255), 1.0f, 0 );
m_pDevice->BeginScene();
m_pDevice->SetStreamSource( 0, lpVB,0, sizeof(CUSTOMVERTEX) );
m_pDevice->SetFVF(D3DFVF_CUSTOMVERTEX);
m_pDevice->DrawPrimitive( D3DPT_LINELIST,0,1);
m_pDevice->EndScene();
lpVB->Release();
lpVB=NULL;
我没测试,错了别骂我 |
|