unity-网格编程03

199 阅读1分钟

既然已经有了空的mesh,那么现在就应该在空的mesh文件中增加信息,那么之前的文章提到过,网格需要有顶点,法线,等等.

unity支持的模型,是fbx格式,而这种格式的模型,三角面构成.所以,这里只测试一个简单的,只有一个三角面的模型.

那么,我们首先是要定义模型顶点,模型的顶点坐标是v3形式.并且是个数组,所以我们在将mesh信息给到mesh Filter之前就应该将这些信息写好.

首先是顶点信息:

mesh.vertices = new Vector3[] 
{
	Vector3.zero,
	Vector3.right,
	Vector3.up
};

定义了3个顶点,你也可以写成(0,0,0),(0,1,0)...这种形式,主要的还是描述点的位置.

接下来是点的排序,这个排序会影响到面的那一面会被显然出来,用的是mesh.vertices的下标.

**

添加描述

mesh.triangles = new int[] 
{
	0, 1, 2
};

那么此时此刻,我们直接运行,将会看到unity中渲染出来的额三角形.如果你渲染出来的三角形是紫色的,那么是没有贴上材质球,新建一个材质球,加入Procedural Mesh上,即可.

如果仍然没有看到,不妨转动场景,也许你正在面片的反方向.