1、首先 介绍点的表示方法
struct CUSTOMVERTEX { float x,y,z; }; CUSTOMVERTEX Vertices[] = { {-5.0, -5.0, 0.0}, { 0.0, 5.0, 0.0}, { 5.0, -5.0, 0.0}, {10.0, 5.0, 0.0}, {15.0, -5.0, 0.0}, {20.0, 5.0, 0.0} };
点的渲染方法--D3DPT_POINTLIST 主要是这个。
点列表
// // It is assumed that d3dDevice is a valid // pointer to a IDirect3DDevice9 interface. // d3dDevice->DrawPrimitive( D3DPT_POINTLIST, 0, 6 );//表示从0个顶点開始、一共6个
效果
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3EzNjExMDYzMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >
点比較小、。看不清楚
详细代码能够自己加入在 sdk自带的samples的tutorials 里面。
2、线的表示
把上面的代码改一下就可以
d3dDevice->DrawPrimitive( D3DPT_LINELIST, 0, 3 );
效果:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3EzNjExMDYzMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >
另一种是连线
d3dDevice->DrawPrimitive( D3DPT_LINESTRIP, 0, 5 );
详细效果自己尝试。会发现3个点能组成2条线
3、三角形的表示
三角形有3种 经常使用的是list和strip
以下是strip的效果
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3EzNjExMDYzMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3EzNjExMDYzMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >
时间: 2024-10-06 14:30:25