2016-12-18 6 views
1

나는 화합의 편집자에게서 나의 집을 만들었 기 때문에이 메쉬 테두리를 제거 할 수 없다. MeshCombiner를 시도했지만 하나의 메쉬 경계에 모든 메쉬를 연결하는 것만으로도 여전히 존재합니다. 나는 블렌더 나 이것과 같은 것을 만들 수 있지만 화합으로부터 제거 할 사람이 있는지 알고있다.gameobject meshes를 통합하는 방법은 무엇입니까?

스크린 샷 :

+0

텍스처를 새 메쉬 (새 uv 's)로 다시 매핑해야하는 것처럼 보입니다. –

+0

메쉬가 겹치는 내부면을 제거 하시겠습니까? 그렇다면 자산 저장소에서 CSG 라이브러리를 사용해 보겠습니다. CSG 부울 Add 작업은 내부면을 제거합니다. [SabreCSG] (https://www.assetstore.unity3d.com/en/#!/content/47418)와 같은 것이 정확히 필요한 것일 수 있습니다. –

답변

1

http://imgur.com/a/1XALE은 어쩌면 당신은 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; 
    } 
}