3D游戏从入门到精通-14

 
2、             线列表
D3D还提供直线的显示,由于很多自然现现象需要它来显示。比如大雨,就需要使用直线来模拟出来。如下图所示:
这里显示三条红、绿、蓝的直线。它的代码如下:
pVertices[0].vPosition = D3DXVECTOR3( -2.0f, 0.0f, 0.0f );    
 pVertices[0].crDiffuse = D3DCOLOR_COLORVALUE( 1.0, 0.0, 0.0, 1.0 );
 
 pVertices[1].vPosition = D3DXVECTOR3( 2.0f, 0.0f, 0.0f );    
 pVertices[1].crDiffuse = D3DCOLOR_COLORVALUE( 1.0, 0.0, 0.0, 1.0 );
 
 //
 pVertices[2].vPosition = D3DXVECTOR3( 0.0f, -2.0f, 0.0f );   
 pVertices[2].crDiffuse = D3DCOLOR_COLORVALUE( 0.0, 1.0, 0.0, 1.0 );
 
 pVertices[3].vPosition = D3DXVECTOR3( 0.0f, 2.0f, 0.0f );    
 pVertices[3].crDiffuse = D3DCOLOR_COLORVALUE( 0.0, 1.0, 0.0, 1.0 );
 
 //
 pVertices[4].vPosition = D3DXVECTOR3( -2.0f, -2.0f, 0.0f ); 
 pVertices[4].crDiffuse = D3DCOLOR_COLORVALUE( 0.0, 0.0, 1.0, 1.0 );
 
 pVertices[5].vPosition = D3DXVECTOR3( 2.0f, 2.0f, 0.0f );    
 pVertices[5].crDiffuse = D3DCOLOR_COLORVALUE( 0.0, 0.0, 1.0, 1.0 );
 
上面的代码分别设置了三条直线的向量和颜色值。然后调用下面函数显示:
 
m_pd3dDevice->DrawPrimitive( D3DPT_LINELIST, 0, m_nLineListCount );
第一个参数设置为D3DPT_LINELIST类型,就是直线列表的方式。
 
  
电子书MM3D引擎源程序例子源程序49元一套
联系人:蔡军生 
联系方式:
QQ: 9073204
EMAIL: caimouse1976 at sina.com
 
 
 
posted @ 2006-08-22 00:12  ajuanabc  阅读(128)  评论(0编辑  收藏  举报