xingxingren: 请教 三角形带如何一次画出一个 n*n的网格?
D3DPT_TRIANGLESTRIP index buffer
1,6,2,7,3,8,4,9,5,10
6,11,7,12,8,13,9,14,10,15
11,16,12,17,13,18,14,19,15,20
16,21,17,22,18,23,19,24,20,25
5,10之后应该重新再来才可以吧?
D3DPT_TRIANGLESTRIP index buffer
1,6,2,7,3,8,4,9,5,10
D3DPT_TRIANGLESTRIP index buffer
6,11,7,12,8,13,9,14,10,15
D3DPT_TRIANGLESTRIP index buffer
11,16,12,17,13,18,14,19,15,20
D3DPT_TRIANGLESTRIP index buffer
16,21,17,22,18,23,19,24,20,25
要不然 9,5,10 形成一个三角形后, “5,10,6”又要生成一个三角形。
出问题了吧?
这个“5,10,6”是不应该画的。还有“10,6,11”也是。
有很多这样的“不该画”的三角形被画出来了。
所以本来只要画32个,你却画了40个。
至于为什么只画到22为止,,,
好象是这样:
DX的“画三角形”都是“先指定要画多少个”三角形,然后再画。
你上面已经多画了8个了,所以后面就少了8个三角形。
OpenGL 是肯定不会出现这种情况的。因为OpenGL是不指定画多少个,直接
BEGIN开始,END结束的。
呵呵,祝楼主好运。
[em2] |