使用网格类

网格 (Mesh) 类是对象网格几何体的基本脚本界面。它用数组来表示顶点、三角形、法线和纹理坐标,还提供 了大量其他有用属性和功能来协助网格生成。

访问对象的网格

网格数据通过使用网格过滤器 (Mesh Filter) 组件来附加到对象上(对象还需要网格渲染器 (Mesh Renderer) 来显示几何体)。使用熟悉的 GetComponent 函数来访问该组件:-

var mf:MeshFilter = GetComponent(MeshFilter);
// Use mf.mesh to refer to the mesh itself.

添加网格数据

网格 (Mesh) 对象拥有顶点及其相关数据(法线和 UV 坐标)和三角形数据的属性。顶点可以任何顺序提供 ,但法线和 UV 数组必须有序,这样索引均与顶点对应(即法线数组的元素 0 提供 顶点 0 的法线,等等)。顶点为 Vector3,代表对象局部空间的点。法线为标准化 Vector3,再一次在本地坐标中代表方向。UV 指定为 Vector2,但由于 Vector2 类型没有称为 U 和 V 的字段,您必须在心里将它们分别转换为 X 和 Y。

三角形指定为在顶点数组中充当索引的整数三元组。数组不使用特殊类来表示三角形,而只是一个简单的整数指数列表。每个三角形都是以三个为一组,因此,前三个元素定义第一个三角形,后面三个元素定义第二个三角形,并以此类推。三角形的一个重要细节是拐角处顶点的顺序。尽管从哪个拐角开始并不重要,但顶点应予以排序,这样当俯视三角形的可见外表面时,各个拐角会按顺时针转动。

Page last updated: 2013-06-25