找回密码
 立即注册
查看: 450|回复: 0

unity 点位绘制面片

[复制链接]
发表于 2021-3-24 19:06 | 显示全部楼层 |阅读模式
效果:

image.png



image.png



image.png



image.png


image.png


public void CreatePlane(GameObject obj, List<Vector2> vertices2D)    {        Triangulator tr = new Triangulator(vertices2D);        int[] indices = tr.Triangulate();        //创建顶点        Vector3[] vertices = new Vector3[vertices2D.Count];        Vector2[] uvs= new Vector2[vertices2D.Count];        for (int i = 0; i < vertices.Length; i++)        {            vertices = new Vector3(vertices2D.x,0, vertices2D.y);            uvs = new Vector2(vertices2D.x / 1f, vertices2D.y / 1f);        }        // 设置游戏对象;           // 创建mesh        Mesh msh = new Mesh();        msh.vertices = vertices;        msh.triangles = indices;        msh.uv = uvs;        msh.RecalculateNormals();        msh.RecalculateBounds();        obj.AddComponent<MeshRenderer>();        MeshFilter filter = obj.AddComponent<MeshFilter>();        filter.mesh = msh;        obj.AddComponent<MeshCollider>();        obj.GetComponent<MeshRenderer>().material = Resources.Load("Materials/Custom_Floor") as Material;        obj.GetComponent<MeshRenderer>().material.color = Color.white;    }
这里没有附加对三角面得排序

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-15 15:33 , Processed in 0.090234 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表