Streaming Mocap Data into Unity

Unityarrow-up-right는 세계적으로 널리 사용되는 3D 및 2D 게임 엔진으로, 실시간 렌더링과 높은 개발 유연성이 강점이에요. Unity는 게임 개발뿐 아니라 가상 프로덕션, 애니메이션, 시뮬레이션, 인터랙티브 콘텐츠 등 다양한 산업군에서 활용되고 있습니다.

MOVIN TRACIN과 MOVIN Studio를 통해 얻은 모션캡처 데이터는 Unity로 실시간 스트리밍할 수 있어, 다양한 실시간 프로젝트에 자연스럽게 적용할 수 있습니다.

1

플러그인을 다운로드해주세요.

MOVIN의 공식 홈페이지에서 MOVIN Studio를 다운로드해주세요.
2

캐릭터를 MOVIN Studio에 불러온 뒤 리타게팅해주세요.

  • Unity에서 사용하고자 하는 캐릭터의 FBX 파일을 MOVIN Studio에 불러와주세요.

  • 불러온 캐릭터에 대해 리타게팅을 진행해주세요.

    • 해당 과정에 대한 자세한 설명은 Retargeting 문서를 참고해주세요.

3

Unity 프로젝트를 킨 뒤, UnityPackage를 불러와주세요.

circle-exclamation
4

모션을 적용할 캐릭터의 스켈레톤에서 실제로 모션의 기준이 되는 최상위 Root Bone(GameObject)에 MocapReceiver 스크립트를 추가해주세요.

  • Unity 프로젝트에 사용할 FBX 캐릭터를 Scene 안으로 불러와주세요.

  • Hierarchy 창에서 Scene에 배치된 캐릭터의 스켈레톤 계층에서 Root Bone (GameObject)을 선택한 뒤, 해당 GameObject에 MocapReceiver 스크립트를 추가해주세요.

    • 해당 예시에서는 mixamorig:Hips 입니다.

    • Hierarchy 창에서 캐릭터 GameObject를 펼치면, mixamorig:Hips를 시작으로 팔, 다리, 척추 머리 Bone들이 부모-자식 구조로 연결된 스켈레톤 계층을 확인할 수 있습니다. 이중 mixamorig:Hips는 캐릭터 모션의 기준이 되는 Root Bone이며, 하위에 위치한 모든 Bone들은 Hips의 움직임을 기준으로 함께 움직입니다.

  • Add Component > Scripts > MOVIN.Core > MocapReceiver를 클릭해 스크립트를 추가해주세요.

5

(MOVIN Studio v2.0.0 이상) Bone Search Filter > Root Bone Name에 root bone의 이름을 작성해주세요.

triangle-exclamation
  • Bone Search Filter는 Root Bone Name으로 작성된 Bone(Transform)을 기준으로, 그 하위 계층에 포함된 모든 Bone들 중에서 MOVIN Studio에 불러온 캐릭터와 이름이 동일한 Bone을 찾아 1:1로 대응합니다.

    • Root Bone Name을 따로 지정하지 않을 경우, 해당 캐릭터의 최상위 계층의 joint를 root bone으로 지정합니다.

  • 캐릭터의 hierarchy를 잘 살펴본 뒤 Root Bone Name을 설정해주세요.

    • Root Bone Name을 무엇으로 작성하는지에 따라 MOVIN Studio에서 스트리밍되는 모션 데이터의 일부만 전달되거나 전부가 전달되지 않을 수 있습니다.

6

(MOVIN Studio v2.0.0 미만) Hip 관절의 부모 GameObject에 Actor 스크립트를 추가해주세요.

triangle-exclamation
  • Streaming Mocap Data into Unity 에서 스크립트를 추가한 동일한 방법으로, Hip 관절의 부모 GameObject에 Actor.cs 스크립트를 추가해주세요.

7

MOVIN Studio에서 스트리밍을 시작해주세요.

  • MOVIN Studio에서 Streaming 탭으로 이동해주세요.

  • Unity 프로젝트와 MOVIN Studio가 동일한 PC에서 실행되고 있다면, Host가 127.0.0.1 (localhost) 로 설정되어 있나 확인해주세요.

  • Unity 프로젝트 내 GameObject에 설정한 Listen Port를 MOVIN Studio 내 Port Number와 동일하게 설정했는지 확인해주세요.

  • Platform이 Unity로 설정되어 있는지 확인한 뒤, Start Streaming 버튼을 클릭해 스트리밍을 시작해주세요.

8

Unity 프로젝트에서 Play 버튼을 클릭해주세요.

  • MOVIN Studio에서의 모션 데이터가 Unity로 실시간 스트리밍되는 것을 확인할 수 있어요!

  • UnityPackage 내 MOVIN > Scenes 폴더에는 설정이 완료된 3개의 예시 Scene들이 존재합니다. Unity에서의 설정이 어렵다면, 해당 Scene을 열어 설정 방법을 확인해주세요.

    • Sample_MOVINman의 경우, MOVIN Studio에서 캐릭터를 불러오지 않아도 테스트가 가능합니다.

    • Sample_Ch14 및 Sample_Ch29의 경우, MOVIN Studio에서 해당 이름에 해당하는 FBX 캐릭터를 불러와야 합니다.

Last updated