VRChat/아바타 꾸미기 (Unity)

모듈러 아바타로 모델의 메쉬 지우기

Labi/라비 2025. 11. 10. 20:30

※모든 내용은 AI로 제작하거나 요약하지 않은, 직접 작성한 글입니다.

3D 모델의 구성 요소인 메쉬를 유니티에서 수정하기는 상당히 어렵지만,

요즘의 모듈러 아바타를 이용하면 일부 작업을 쉽게 할 수 있습니다.

 

이 글에서는 모듈러 아바타 컴포넌트인 MA Mesh Cutter를 이용해서 메쉬를 제거해 보겠습니다.

 


 

키펠입니다.

 

옷의 안쪽 부분이 막혀 있어, 안쪽 신체가 아예 보이지 않습니다.

이 부분의 메쉬를 제거할 겁니다.

 

아바타 내부에 Ctrl+Shift+N으로 새 오브젝트를 만들고, MA Mesh Cutter 컴포넌트를 추가합니다.

Target Renderer에 오브젝트를 집어넣으면 준비는 다 됐습니다.

 

이 컴포넌트에 Vertex Filter라는, 필터 컴포넌트를 넣어서 제거할 매쉬를 정합니다.

필터는 네 종류가 있는데요,

 

By Axis: 정해둔 지점을 기준으로, 특정 방향을 전부 잘라냅니다.

 

By Blendshape: 오브젝트의 블렌드쉐이프에 영향을 받는 메쉬를 제거합니다.

이 방법으로 아바타의 블렌드쉐이프에 등록된 동공이나 손발같은 특정 부위를 쉽게 제거할 수 있습니다.

 

By Bone: 오브젝트의 뼈대에 있는 특정 부위를 기준으로 그 주변을 제거합니다.

Weight Threshold는 해당 지점에서 영향을 받는 범위를 설정하는 슬라이더에요.

블렌드쉐이프를 지원하지 않는 모델에서 유용합니다.

 

By Mask: 텍스쳐 이미지를 사용해 특정 부분을 지정해 제거할 수 있습니다.

제일 정확하지만, 모델의 UV 전개도를 이해하고 있어야 원활하게 사용할 수 있습니다.

 

제거한 이후의 안쪽 면이 부자연스럽다면, 쉐이더 설정에서 해결할 수 있습니다.

릴툰의 경우는 기본 설정에서 Cull Mode를 OFF로 변경하면 됩니다.

보통은 최적화 목적으로 Back입니다.

 

 

 

단순 메쉬 제거는 AAO: Avatar Optimizer나 MeshDeleterWithTexture 같은 도구로도 쉽게 가능합니다.

모듈러 아바타 컴포넌트가 주는 장점은 크게 두 가지입니다.

첫 번째는, 비파괴여서 문제가 생겼을 시 되돌리기 쉽습니다.

두 번째는, Mesh Cutter는 하나의 기능으로 작동하기 때문에, 이를 기반으로 한 메뉴 제작도 가능합니다.

 

배포용 에셋을 제작할 경우 이 컴포넌트를 유용하게 사용할 수 있겠습니다.

 


 

 

이렇게 모델의 메쉬 일부분을 제거하는 작업을 유니티에서 하는 방법에 대해 알아보았습니다.

 

글을 참고해서 원하는 대로 수정해 보아요.