如何联合游戏对象网格?

时间:2016-12-18 18:36:03

标签: unity3d graphics unity5 unityscript mesh

因为我从统一编辑器中建造了我的房子,所以我无法移除这个网格边框。我试过MeshCombiner,但它只是连接一个网格边框中的所有网格仍然存在。我知道我可以用Blender或类似的东西制作它但是有没有人可以从统一中删除?

屏幕截图:http://imgur.com/a/1XALE

1 个答案:

答案 0 :(得分:1)

也许您正在寻找CombineMeshes。一个例子是

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(MeshFilter))]
[RequireComponent(typeof(MeshRenderer))]
public class ExampleClass : MonoBehaviour {
    void Start() {
        MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>();
        CombineInstance[] combine = new CombineInstance[meshFilters.Length];
        int i = 0;
        while (i < meshFilters.Length) {
            combine[i].mesh = meshFilters[i].sharedMesh;
            combine[i].transform = meshFilters[i].transform.localToWorldMatrix;
            meshFilters[i].gameObject.active = false;
            i++;
        }
        transform.GetComponent<MeshFilter>().mesh = new Mesh();
        transform.GetComponent<MeshFilter>().mesh.CombineMeshes(combine);
        transform.gameObject.active = true;
    }
}