有没有一种方法或算法可以自动指定应该如何连接顶点列表?
例如,假设我有这个(为简单起见,以2D表示):
*(0,0) *(2,0)
*(-1,-1) *(1,-1)
所以我按(-1,-1),(0,0),(1,-1),(2,0)的顺序添加顶点
然后在三角形列表中添加索引0,1,2和2,1,3,这将生成一个包含两个三角形的网格。
但是,随着顶点数量的增加,定义三角形的过程将变得更加乏味,除非我当然要以某种排序的顺序添加这些顶点,以便我可以跟踪自己是哪个三角形,并且每个都添加一个偏移量时间(我不想做)。
我要去的地方是这个(再次为简单起见,在2D中):
我想定义一个数组,说:
[0,0,1,0,1,0]
[0,0,0,0,0,0]
[0,1,0,1,0,0]
它表示xy平面,并且该数组中的点是顶点(1)或不包含任何点(0)。因此,array [0,0]将为x = 0,y = 0(无),而array [2,1](一个顶点)将为x = 1,y = 2。然后,我想使用它生成一个网格。
这可能吗?任何帮助,将不胜感激。
谢谢
编辑:我知道有一个三角脚本,但它仅适用于2D。
最佳答案
不,您只需手动执行此操作。
就是这样。
请注意,使用带有一行代码的例程,您可以“自动化”该过程。
如果您正在学习网格,那么了解,如果您不想使用,则不必使用重复的顶点,这一点至关重要。
祝您好运,并祝贺您整周在Unity3D标签中提出了唯一有值(value)的问题:O
(1)我敦促您在Unity中编织网格时熟悉tis“gotchya”
http://answers.unity3d.com/answers/417487/view.html
请注意,在这里反复问同样的问题。
(2)我敦促您研究其中的三个链接答案。
(3)一定要了解这个... http://answers.unity3d.com/answers/352167/view.html
(4)不要忘记记住Unity的手性。
http://answers.unity3d.com/answers/267076/view.html
一小点。不用说,由于视频游戏中几乎任何原因,您都不会使用网格碰撞器。 Unity包含了这个概念,这非常令人困惑,并且它使新手和业余程序员无休止地感到困惑。 (如果要构建自己的网格,甚至添加动态对撞机,则要做的就是使用尺寸合适的盒式对撞机。)
关于unity3d - Unity 5 : Automatically specifying the triangle list for the vertices of a mesh,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35394532/