참치김밥은 최고의 한식이다

[유니티] 직접 공부한 CombineSkinMeshes Lite 에셋 사용 가이드 본문

Unity

[유니티] 직접 공부한 CombineSkinMeshes Lite 에셋 사용 가이드

l__j__h 2024. 2. 20. 16:26

에셋 설명

  • Skinned Mesh Renderer(이하 SMR)들을 Combine해주는 에셋
  • 당연히 SMR 내의 텍스쳐들도 아틀라스로 모두 합쳐 1개의 머터리얼로 Combine 해줌
  • 본 Lite 버전은 무료 버전으로, URP에서는 작동 X (단, 유료 버전은 URP에서 작동 O)

목표

유료 버전을 구매하기에 앞서, 해당 에셋의 사용법을 알아보기 위함

주의 사항

  • 아바타 오브젝트와 하위의 Armature 오브젝트의 Position은 모두 (0,0,0)이어야 한다. 만약 현재 실행 중인 Animation이 아바타 or Armature의 Position을 움직이고 있다면, 해당 Animation을 Stop한 후, 위치를 다시 제자리로 옮겨놓고, Combine해야 한다.
  • 텍스처의 사이즈는 모두 동일해야 한다.
  • 텍스처의 Read/Write Enable 옵션을 모두 켜주어야 한다.
  • 모델의 Read/Write Enabled 옵션을 모두 켜주어야 한다.

사용 방법

  • CombineSkinMeshesLite.cs 를 아바타의 최상위 Root에 추가한다. (예를 들어, 메타펍스 아바타의 Root는 Animator가 부착되어 있는 오브젝트이다.)
  • CombineSkinMeshesLite의 Armature에 맞는 오브젝트를 할당한다.
  • CombineSkinMeshesLite의 Skinned Meshes에 Combine할 SMR을 모두 추가한다. (아무것도 추가하지 않으면, 하위의 모든 SMR을 Combine해버린다.)
    • 이때, 서로 Combine 가능한 SMR만 추가하는데,
    • SMR들이 서로  다른 Bone을 사용하고 있는 경우, Combine할 수 없다.
  • 사용 중인 텍스쳐의 Mipmap generate 옵션 활성화 여부에 따라, CombineSkinMeshesLite의 IsMipMap을 체크/체크해제 해준다.
  • BeginCombineMeshes() 메서드를 호출한다.
  • Combine이 완료되면 중지했던 Animation을 다시 켜거나, 위치를 옮겨주면 된다.
728x90