Unity3D技术之用程序生成网格几何体-使用网格类浅析

使用网格类

网格 (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。

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值