如果将相同的顶点A放入三角形条带中多次,则取另一个顶点B并将其多次放入三角形条带(数量取决于想要继续的三角形方向),然后一个有效地可以有两个单独的三角形条带,只用一次绘制调用(第一个包含顶点A之前的所有三角形,第二个包含顶点B之后的所有三角形)。
我的问题:
我担心,即使完整的三角形条带绘制调用将绘制几何上简单连接的网格,但在尝试纹理网格时,由于其间的跳跃,我会遇到问题。我还没到那里,所以我无法测试它。我的假设是否正确? 无论如何,我在三角形条带中跳跃是“绘图网格”行业中的有效技术吗?有没有办法对结果进行适当的纹理处理,或者是跳跃的等效更好的行为?
答案 0 :(得分:3)
考虑一个由三角形组成的“网格”,该三角形细分为4个相似的三角形:
2
/\
/ \
1 /____\3
/\ /\
/ \ / \
0 /____\/4___\5
假设CCW(glFrontFace)缠绕,三角形:{0,4,1}, {1,4,3}, {3,2,1}
被编码为条带:{0,4,1,3,2}
。诀窍是通过添加退化(零面积)三角形来添加三角形:{4,5,3}
,同时保持正确的缠绕。简而言之:
{0,4,1,3,2,2,3,3,5,4}
,添加零区域三角形:{3,2,2}, {2,2,3}, {3,3,5}
。
如果使用有效的网格striping,这会为较大的网格添加可忽略不计的额外几何体。
答案 1 :(得分:2)
光栅化器绘制三角形区域。具有两个相同点的“三角形”没有区域。因此,没有三角形区域可供渲染。
退化三角形(两个点相同的三角形的技术术语)是连接多个条带的常用技术。这通常通过添加更多索引在索引数组中完成;没有任何关于网格的实际拓扑需要改变。