3D制作中的拓扑的含义是什么?

(72) 2024-04-14 16:01:01

在 3D 建模里,拓扑(Topology)这个概念,指的是多边形网格模型的点线面布局、结构、连接情况。拓扑是一个比较重要的进阶概念。如果 3D 模型只有「形」,能渲染出好的结果,不过没有一个好的拓扑结构,依然不能称得上是一个好的模型。拓扑这个概念用文字表达可能会相当抽象,举一个例子说明一下:
3D制作中的拓扑的含义是什么? (https://mushiming.com/)  第1张

这是两个平面,外观上完全一样,可是分别有不同的拓扑结构:

可以看到,虽然两个平面的外观、大小是一样的,不过内部的顶点、边线、面的排布方式却不尽相同。右边的平面内部结构仅仅是平直的网格,左边的却复杂一些,平面、边线围绕中心部分,形成了一个环状的结构。拓扑重要吗?重要。如果一个模型拥有良好的拓扑结构,不仅模型布线外观比较干净规整,还可以很大程度上,改善建模的工作效率,可以更快、更精确地修改、操作模型的整体和细节,从而更好的反映这个物体的结构特征。
3D制作中的拓扑的含义是什么? (https://mushiming.com/)  第2张

这是一个根据左边那个平面创建的一个简单的冲击坑/环形山地形模型。可以看出,根据线、面的排布,这个平面可以被分割成几个部分(每个部分用不同颜色标示),选择、修改加工这些部分,相对于右边那个平面来说,更方便。比如,可以选择某个特定的 edge flow 或者 edge loop,也可以使用环切(loop cut)命令来添加细节。一般来说,创建人物模型尤为要注重拓扑结构。
3D制作中的拓扑的含义是什么? (https://mushiming.com/)  第3张

这个模型的拓扑结构比较合理。可以看到,这个模型的拓扑结构,大体上符合真实的人头结构:眼部被围成一圈,眼睛和鼻子加起来是一圈,嘴是单独一圈,下颌的走线类似真实世界里相应的骨骼结构。这样,要编辑某个部分,比杂乱无章的拓扑模型(如直接用球体雕刻出来一个人头模型)方便的多,比如调整眼眶的大小,可以直接选择眼睛的那几圈,然后缩放一下,再调整一下位置和细节即可。另外,由于拓扑结构大体符合真实人头的骨骼、肌肉结构,做动画时形变也能做到更加平滑、自然、真实。一般来说,要尽量(但不必须)消除多边形模型中的三角面,因为三角面会打断 edge flow/edge loop,从而破坏拓扑结构。三角面在动画中也经常出现形变不自然的情况。并且,三角面在做表面细分(subdivision surface)时更容易出现异常。比如,有两个外观相同的方块,一个由四边面(quads)组成,另一个由三角面组成:
3D制作中的拓扑的含义是什么? (https://mushiming.com/)  第4张

但做 subdivision surface 后,由三角面组成的模型看上去,表面显得不自然、混乱;相比之下,由 quads 组成的方块在细分后看上去更规整:
3D制作中的拓扑的含义是什么? (https://mushiming.com/)  第5张
另外,也要避免使用边数大于 4 的多边形(N-gon)。所以通常情况下,只有四边面构成(quads-only)的模型拓扑结构是最好的(比如最开始给出的两个平面模型)。差不多就这些,权当是学习笔记了。

作者:老子云(http://laozicloud.com)

THE END

发表回复