前言
本文介绍的是在Unity中绘制图形的相关知识, 并介绍了OpenGL的图形渲染管线流程, 并总结了几个初学者常见的问题.
Unity中绘制一个简单的三角形
只需要以下步骤:
- 新建VertexHelper, 生成一个顶点缓冲对象
- VertexHelper.AddVertr往缓冲内添加顶点数据
- VertexHelper.AddTriangle往缓冲内添加三角形顶点索引数据
- 新建一个Mesh, 使用VertexHelper.FillMesh填充
- 将Mesh指定到MeshFilter中
以下是相关概念的介绍:
- 继承自Object的类, 它允许从脚本创建或修改网格. 网格包含顶点数组和多个三角形数组。
- 顶点数组:
- 每个顶点最多有四种顶点数据: 顶点坐标, 两个纹理坐标, 法线, 切线;
- 每种顶点数据都存储在相同大小的单独数组中
- 三角形顶点索引数组中指定了每个三角形的顶点绘制顺序
- 注意: 三角形的顶点顺序, 顺时针表示正面,逆时针表示背面,而Unity在渲染时默认只渲染正面,背面是看不见的
- 可以添加一个顶点对象到缓存中
- 方法签名为:
- public void AddVert(Vector3 po