Unity Mesh Mesh 正八面体Octaheron贴图

Posted 御雪妃舞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity Mesh Mesh 正八面体Octaheron贴图相关的知识,希望对你有一定的参考价值。

正八面体贴图其实要看你具体贴需要什么效果,这里也没什么好延伸的,延伸的也没啥意义了,根据正方体的原理,我这里随便贴了一个




贴图的思路图是这样的:



第一个正方形,中心点对应down,四个角对应正八面体的四个角,up点对应第二个正方形的中心的,理论上缺少了第二个正方形的四个角的描述,但是居然贴上去了,具体原理还不是很清楚。


整个代码如下:


using UnityEngine;
using System.Collections;


[RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))]
public class OCtahefronTex : MonoBehaviour


    public Material mat;

    // Use this for initialization
    void Start()
    
        DrawOctahedron();
    

    void DrawOctahedron()
    
        gameObject.GetComponent<MeshRenderer>().material = mat;
        Mesh mesh = GetComponent<MeshFilter>().mesh;
        mesh.Clear();

        mesh.vertices = new Vector3[]
        
            Vector3.down,
            Vector3.forward,
            Vector3.left,
            Vector3.back,
            Vector3.right,
            Vector3.up
        ;

        mesh.triangles = new int[]
        
            //0,2,1,
            //0,3,2,
            //0,4,3,
            //0,1,4,

            //5,1,2,
            //5,2,3,
            //5,3,4,
            //5,4,1

            0,1,2,
            0,2,3,
            0,3,4,
            0,4,1,

            5,2,1,
            5,3,2,
            5,4,3,
            5,1,4
        ;

        mesh.uv = new Vector2[]
        
            new Vector2(0.25f,0.5f),
            new Vector2(0f,0f),
            new Vector2(0f,1f),
            new Vector2(0.5f,1f),
            new Vector2(0.5f,0f),
            new Vector2(0.75f,0.5f)
        ;
    




以上是关于Unity Mesh Mesh 正八面体Octaheron贴图的主要内容,如果未能解决你的问题,请参考以下文章

Unity - 绘制正五边形网格

scikit-FEM-mesh

unity动态生成mesh

unity---Mesh网格编程

unity---Mesh网格编程

Unity---------Mesh理解