首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

dx绘制四角锥,沿y轴旋转,有2个面不绘制,该如何解决

2012-02-06 
dx绘制四角锥,沿y轴旋转,有2个面不绘制顶点C/C++ codevertices[0] Vertex(-1.0f, -1.0f, -1.0f)vertice

dx绘制四角锥,沿y轴旋转,有2个面不绘制
顶点

C/C++ code
vertices[0] = Vertex(-1.0f, -1.0f, -1.0f);    vertices[1] = Vertex(-1.0f,  -1.0f, 1.0f);    vertices[2] = Vertex( 1.0f,  -1.0f, -1.0f);    vertices[3] = Vertex( 1.0f, -1.0f, 1.0f);    vertices[4] = Vertex(0.0f, 2.0f,  0.0f);

顶点索引缓存
C/C++ code
 indices[0]=0;indices[1]=4;indices[2]=2;    //左侧    indices[3]=0;indices[4]=4;indices[5]=1;    //右侧    indices[6]=2;indices[7]=4;indices[8]=3;    //后    indices[9]=1;indices[10]=4;indices[11]=3;


沿y轴旋转
D3DXMatrixRotationY(&Ry, y);

Device->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, 0, 5, 0, 4);

旋转了2个面以后,就会出现两个侧面不绘制,继续旋转出现空白

是不是我顶点的定义顺序有问题?



[解决办法]
indexbudui

改为

0 4 2 
1 4 0
2 4 3 
3 4 1

热点排行