개요
작년 말쯤 언리얼에서 제공하는 맥스 스크립트를 이용해 버텍스 애니메이션을 제작하는 방법을 공유 드렸습니다.
언리얼 엔진에서 버텍스 애니메이션(Vertex Animation) 사용하기
최근에 버텍스 애니메이션을 다시 만져보면서 언리얼 엔진 5에 AnimToTexture이라는 플러그인이 있었다는 사실을 알게 되었습니다. 언리얼 5가 출시된 지도 1년이 훌쩍 넘었으니 꽤나 오래 있던 기능이었는데 모르고 있었네요.
관련 공식 문서가 없어서 그나마 잘 설명된 언리얼 커뮤니티 글을 공유 드리겠습니다.
- AnimToTexture 플러그인 사용법이 자세히 설명되어 있습니다.
- 플러그인 자체도 사용하기 쉽게 되어있지만 보다 더 클릭 수를 줄이기 위해 Kevin Romond 가 제작한 툴에 대한 링크도 제공됩니다.
- 맨 하단에 샘플 프로젝트도 제공됩니다.
AnimToTexture 특징
- 사용이 간편합니다. 데이터 에셋에 필요한 파라미터들과 리소스 레퍼런스들을 저장합니다.
- 에디터 유틸리티로 애니메이션 베이킹을 진행합니다.
- 애니메이션 시퀀스가 필요합니다.
- 맥스 스크립트로 제작하는 버텍스 애니메이션은 DCC 자체에서 애니메이션을 텍스쳐에 베이킹하였지만 AnimToTexture 플러그인은 애니메이션 시퀀스를 바탕으로 엔진에서 베이킹을 진행합니다.
- 특히, 본(Bone) 기반으로 애니메이션을 베이킹하는 방법을 사용하려면 스켈레탈 메시에 본이 박혀있어야 합니다.
- 본(Bone) 기반 버텍스 애니메이션을 제작할 수 있습니다.
- 본 구조가 같은 스켈레탈 메시들 끼리 버텍스 애니메이션용 텍스쳐들을 일부 공유할 수 있습니다. (Bone과 버텍스들의 상관 관계를 저장해두는 Bone Weight 텍스쳐만 새로 베이킹하면 됨)
- 이는 큰 장점입니다. 왜냐면 게임 제작 시 캐릭터나 몬스터들의 종류에 따라서 공용 본을 두고 사용하는 경우가 많기 때문입니다. 예컨대, 인간형 공용 본, 사족 보행형 공용 본 등.
- 본의 갯수가 버텍스의 갯수보다 훨씬 적기 때문에 텍스쳐 사이즈들이 작고 따라서 버텍스 기반 버텍스 애니메이션용 텍스쳐들보다 용량이 작습니다.
- 빠릅니다.
좋은 글이네요. 공유해주셔서 감사합니다.