一个简单的unity网格生成代码
通过这段简单的代码和说明,理解下网格生成原理。unity渲染网格需要两个组件MeshFiler, MeshRender网格需要顶点数据,三角形数据(这里只定义这两个)
using UnityEngine;
public class QuadCreator : MonoBehaviour
{
void Start()
{
//渲染网格需要MeshRender和MeshFiler组件
gameObject.AddComponent<MeshRenderer>();
var meshFilter = gameObject.AddComponent<MeshFilter>();
//网格的创建
Mesh mesh = new Mesh();
//创建网格四个顶点
Vector3[] vertices = new Vector3
{
new Vector3(0,0,0),
new Vector3(1,0,0),
new Vector3(0,1,0),
new Vector3(1,1,0)
};
//定义网格三角形
int[] tris = new int
{
0,2,1,
2,3,1,
};
mesh.vertices = vertices;
mesh.triangles = tris;
meshFilter.mesh = mesh;
}
}
希望注释能让代码更容易读懂,将这个脚本挂在gameObject上运行就会生成网格,因为没有材质球所以是粉色的。
页:
[1]