多边形网格
编辑在3D计算机图形学和实体建模中,多边形网格是定义多面体对象形状的顶点,边 s和面 s的集合。面通常由三角形(三角形网格),四边形(quad)或其他简单的凸多边形(n-gons)组成,因为这可以简化渲染,但通常也可以由凹面多边形甚至带孔的多边形组成。
(adsbygoogle = window.adsbygoogle || []).push({});
多边形网格的研究是计算机图形学(特别是3D计算机图形学)和几何建模的一个很大的子领域。多边形网格的不同表示用于不同的应用程序和目标。在网格上执行的各种操作可能包括:布尔逻辑、平滑、简化等。还存在用于光线跟踪,碰撞检测和具有多边形网格的刚体动力学的算法。如果渲染网格的边缘而不是面,则该模型将变为线框模型。
体积网格不同于多边形网格,因为它们明确表示结构的表面和体积,而多边形网格仅明确表示表面(体积是隐式的)。
元素
编辑用多边形网格创建的对象必须存储不同类型的元素。这些包括顶点、边、面、多边形和曲面。在许多应用程序中,仅存储顶点,边以及面或多边形。渲染器只能支持3面,因此,多边形必须由许多这样的面构成,如上所示。但是,许多渲染器要么支持四边形和更高边的多边形,要么能够即时将多边形转换为三角形,从而无需以三角形式存储网格。
顶点位置(通常在3D空间中)以及其他信息,例如颜色,法线向量和纹理坐标。边缘两个顶点之间的连接。面对一组封闭的边,其中一个三角形面具有三个边,而一个四面体具有四个边。甲多边形是一个共面设置的面。在支持多面的系统中,多边形和面是等效的。但是,大多数渲染硬件仅支持3或4面,因此多边形表示为多个面。
从数学上讲,多边形网格可被视为具有几何,形状和拓扑的其他属性的非结构化网格或无向图。表面更常称为平滑组很有用,但不需要对平滑区域进行分组。考虑一个带盖的圆筒,例如汽水罐。为了使侧面平滑着色,所有表面法线必须水平指向远离中心的位置,而顶盖的法线必须垂直向上和向下指向。渲染为单个,阴影阴影曲面上,折痕顶点的法线不正确。因此,需要某种确定从何处停止平滑的方法来对网格的平滑部分进行分组,就像多边形对3面的面进行分组一样。作为提供表面/平滑组的替代方法,网格可以包含用于计算相同数据的其他数据,例如分割角(法线大于此阈值的多边形会自动视为单独的平滑组,或者会采用某些技术(例如分割或倒角)自动应用于它们之间的边缘)。
另外,非常高分辨率的网格较少需要平滑组的问题,因为它们的多边形非常小以至于不需要。此外,存在另一种选择,即可以简单地将表面本身与网格的其余部分分离。团体某些网格格式包含组,它们定义了网格的单独元素,对于确定用于骨骼动画的单独子对象或用于非骨骼动画的单独actor 很有用。材料通常,将定义材质,从而允许网格的不同部分在渲染时使用不同的着色器。紫外线坐标大多数网格格式还支持某种形式的UV坐标,这些UV坐标是“展开”的网格的单独2D表示,以显示二维纹理贴图的哪个部分应用于网格的不同多边形。网格还可能包含其他这样的顶点属性信息,例如颜色,切线矢量,权重图以控制动画等(有时也称为channel)。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/108894/