3188人加入学习
(5人评价)
Unity性能优化全攻略(基于Unity2017)

Unity性能优化全攻略(基于Unity2017)

价格 ¥ 45.00
该课程属于 Unity - A计划(一年有效期) 请加入后再学习

MeshFilter 

CombineInstance[] 来得到MeshFilter []中的Mesh

用CombineMeshes得到CombineInstance[]中的Mesh

[展开全文]
J博士 · 2018-09-03 · 12-Mesh合并 0

  //创建一个空物体,最好Reset一下放在世界(0,0,0),空物体要带有MeshFilter组件(用于确定形状)和MeshRenderer组件(用于渲染)
        //下面是合并Mesh的代码
        //1.获取空物体下所有子物体的MeshFilter组件(这个组件用于控制物品的形状)Mesh是网格
        MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>();
        //2.创建合并实例体数组
        CombineInstance[] combineInstances=new CombineInstance[meshFilters.Length];
        //将合并实例体的网格和位置设置成子物体MeshFilter一样的
        for (int i=0;i<meshFilters.Length;i++)
        {
            combineInstances[i].mesh = meshFilters[i].sharedMesh;//这个sharedMesh是场景实例的Mesh,还有一个是Mesh是克隆Mesh
            combineInstances[i].transform = meshFilters[i].transform.localToWorldMatrix;//将子物体坐标转化为世界坐标系坐标
        }
        //创建一个网格
        Mesh myMesh = new Mesh();
        //将合并实例体们合并起来形成一个整体Mesh
        myMesh.CombineMeshes(combineInstances);
        //赋值给空物体,让空物体显示出整体
        GetComponent<MeshFilter>().sharedMesh = myMesh;
        //还要记得将MeshRenderer组件中的Material赋值好,不然显示的是粉红色

        //对比性能:优化了40%

[展开全文]
Milk · 2018-04-22 · 12-Mesh合并 0

授课教师

SiKi学院老师

课程特色

图文(1)
下载资料(2)
视频(18)