标签:smo mvm ebe acl who jmm vts svm 获得
| 整个CG领域中这三个概念差不多,在一般的实践中,大致上的层级关系是:材质(Material)包含贴图(Map),贴图包含纹理(Texture) 纹理是最基本的数据输入单位,游戏领域基本上都用的是位图,此外还有程序化生成的纹理(Procedural Texture) 贴图(Map)其实包含了另一层含义:映射,其功能是把纹理通过UV坐标映射到3D物体表面。贴图包含了除了纹理以外其他很多信息,比如说:UV坐标,贴图输入输出控制等。 材质是一个数据集,主要功能就是给渲染器提供数据和光照算法,贴图就是其中数据的一部分,根据用途不同,贴图也会被分成不同的类型,比如:Diffuse,Map,Specular Map,Normal Map,Gloss Map等,另一个重要部分就是光照模型shader,用于实现不同的效果。 | 
|  private void GetTriangle()     {         MeshFilter filter = gameObject.AddComponent<MeshFilter>();         Mesh mesh=new Mesh();         filter.sharedMesh = mesh;         //构建三角形的三个顶点,并赋值给mesh.vertices         mesh.vertices=new Vector3[]{new Vector3(0,0,1),new Vector3(0,2,0),new Vector3(2,0,5),};         //构建三角形的顶点顺序         mesh.triangles=new int[]{0,1,2};         mesh.RecalculateNormals();         mesh.RecalculateBounds();         //使用shader构建一个材质,并设置材质颜色         Material mat=new Material(Shader.Find("Diffuse"));         mat.SetColor("_Color",Color.yellow);         //构建一个MeshRenderer并把上面的材质赋值给renderer.sharedMaterial         //使其把上面构造的mesh渲染到屏幕上         MeshRenderer renderer = gameObject.AddComponent<MeshRenderer>();         renderer.sharedMaterial = mat;     } private void GetPentagon()     {         MeshFilter filter = gameObject.AddComponent<MeshFilter>();         Mesh mesh = new Mesh();         filter.sharedMesh = mesh;         mesh.vertices = new Vector3[]         {             new Vector3(1, 0, 0),             new Vector3(3, 0, 0),             new Vector3(0, 2, 0),             new Vector3(4, 2, 0),             new Vector3(2, 4, 0),         };         mesh.triangles = new int[] {0, 3, 1, 0, 2, 3, 2, 4, 3};         mesh.RecalculateNormals();         mesh.RecalculateBounds();         Material mat = new Material(Shader.Find("Diffuse"));         mat.SetColor("_Color",Color.blue);         MeshRenderer renderer = gameObject.AddComponent<MeshRenderer>();         renderer.sharedMaterial = mat;     } | 
标签:smo mvm ebe acl who jmm vts svm 获得
原文地址:https://www.cnblogs.com/DevMi/p/mesh.html