CombineMeshes

来源:互联网 发布:乔丹史兰斯基 知乎 编辑:程序博客网 时间:2024/06/15 11:51

CombineMeshes 是个非常有用的方法,对于提高帧率非常有帮助,我们一起来学习下。

附代码:

public GameObject cube;public GameObject cube1;public GameObject cube2;void Start (){cube1.SetActive (false);cube2.SetActive (false);MeshFilter meshFilter = cube.GetComponent<MeshFilter> ();MeshFilter meshFilter1 = cube1.GetComponent<MeshFilter> ();MeshFilter meshFilter2 = cube2.GetComponent<MeshFilter> ();Material[] mats = new Material[]{cube.GetComponent<MeshRenderer> ().sharedMaterial,cube1.GetComponent<MeshRenderer> ().sharedMaterial,cube2.GetComponent<MeshRenderer> ().sharedMaterial,};CombineInstance[] combines = new CombineInstance[3];combines [0].mesh = meshFilter.sharedMesh;combines [0].transform = meshFilter.transform.localToWorldMatrix;combines [1].mesh = meshFilter1.sharedMesh;combines [1].transform = meshFilter1.transform.localToWorldMatrix;combines [2].mesh = meshFilter2.sharedMesh;combines [2].transform = meshFilter2.transform.localToWorldMatrix;Mesh combineMesh = new Mesh ();combineMesh.CombineMeshes (combines,false);cube.GetComponent<MeshFilter> ().mesh = combineMesh;cube.GetComponent<MeshRenderer> ().sharedMaterials = mats;}


0 0
原创粉丝点击