애니메이션은 캐릭터, 객체 및 환경에 움직임과 동작을 적용하여 매력적이고 역동적인 경험을 만드는 과정입니다. 객체를 움직이고 상호작용하는 방법은 여러 가지가 있지만, Roblox에서 애니메이션은 주로 애니메이션 편집기 또는 애니메이션 관련 API를 사용하여 특정 캐릭터나 파트 그룹의 표현적인 움직임을 사용자 정의하는 것을 의미합니다.
애니메이션은 모든 Roblox 파트나 파트 그룹에 적용될 수 있습니다. 다양한 유형의 객체는 다양한 애니메이션 기능을 활용할 수 있습니다. 다음은 애니메이션이 가능한 객체의 일반적인 범주입니다:
- 단순 객체는 기본 파트와 같이 파트의 단일 위치 또는 회전 속성에서만 변경 사항을 애니메이션화할 수 있습니다.
- 리그는
Bone
또는Motor6D
와 같은 관절로 연결된 파트로, 관절 사이의 위치 및 회전 움직임을 표현할 수 있습니다. 리그 모델은 환경 및 이벤트에 반응하여 움직임을 신속하고 프로그래밍적으로 적용하는 역운동학과 같은 애니메이션 기능을 활용할 수 있습니다. - R15 리그는 표준화된 아바타 캐릭터 모델을 포함하는 리그로, 플레이어 또는 비플레이어 캐릭터 모델이라도 Roblox의 캐릭터 애니메이션 라이브러리와 기타 움직임 기능을 사용할 수 있습니다.
애니메이션 편집기 플러그인은 리그에서 사용자 정의 애니메이션을 설계하고 게시할 수 있게 해줍니다. 리그의 개별 섹션을 연결하는 관절을 움직여 포즈를 만들 수 있으며, 애니메이션 편집기는 포즈 간에 리그를 부드럽게 애니메이션화합니다. 모든 움직이는 부분이 Motor6D
객체로 연결되어 있는 한, 인간 리그와 비인간 리그 모두에 애니메이션 편집기를 사용할 수 있습니다.
애니메이션을 만들 때 Studio는 효과적으로 애니메이션화할 수 있는 다음 기능을 제공합니다:
- 애니메이션 캡처 도구를 통해 얼굴 및 신체 애니메이션을 즉시 생성합니다.
- 커브 편집기로 전환하여 커브 기반 애니메이션 UI와 애니메이션 트랙에 대한 더 많은 제어를 할 수 있습니다.
- 리그 메쉬의
Bones
을 포즈하고 애니메이션화하여 현실감 있는 애니메이션을 만듭니다.
역운동학 API를 사용하여 환경 및 외부 이벤트를 기반으로 애니메이션과 포즈를 자동으로 생성할 수 있습니다. 역운동학을 사용하면 캐릭터의 머리가 하늘을 나는 새를 추적하게 하거나 캐릭터의 팔이 근처의 문 손잡이를 자동으로 잡도록 하는 등 다양한 애니메이션 이벤트를 절차적으로 생성할 수 있습니다.
애니메이션 이벤트는 동작을 트리거하는 애니메이션의 특정 지점입니다. 애니메이션 편집기 타임라인에 애니메이션 이벤트 마커를 정의한 다음, AnimationTrack:GetMarkerReachedSignal()
을 사용하여 애니메이션이 실행될 때 마커를 감지하여 사용자의 발이 땅에 닿을 때마다 소리 효과를 재생하는 등의 특정 작업을 수행할 수 있습니다.