상세 컨텐츠

본문 제목

모션캡쳐

by 보리차04 2024. 6. 25. 11:19

본문

2023.06.16

한국영상대학교 특수영상제작과 1학년 때

모션캡쳐 실습 특강이 있어서 참가했습니다.

그린 배경에 넓은 모니터

대충 이런 쫄쫄이를 입은 뒤

옷에 마커를 부착합니다.

마커에 동그란 회색 스티로폼 부분에 반사물질 처리를 해서

모션캡쳐 공간에 360도로 총 24개의 카메라가 있고

카메라에서 빛을 쏘고 반사하여 모션을 인식하는 방식입니다.

모션캡쳐 하기 전에 끝에 반사 물질이 있는 막대기를 휘저으며

활동할 수 있는 공간을 인식 시켜줍니다.

이 과정은 한 번 해두면 저장해서 나중에 모션캡쳐만 바로 할 수 있습니다.

몸에 총 50개의 마커를 부착하고

프로그램에서 50개의 마커를 인식하면 스켈레톤을 생성가능합니다.

무대 가운데에 서서 T자 자세를 한 뒤 스켈레톤을 생성하면 됩니다.

 

 

2024년 1학기에 애니메이션&리깅 수업에서 모션캡쳐 실습을 하는 데

큰 도움이 되었습니다.

 

 

 

 마커의 위치

 

마커의 위치가 굉장히 중요합니다.

우선 쫄쫄이 옷을 입고

신발을 신은 채로 추가로 신어야 하는 천과

가발망 같은 천, 장갑을 껴야 마커의 찍찍이 부분으로 부착 가능 합니다.

 

굉장히 중요한 부분(관절 부분)에는 무조건 정확한 위치에 붙여야합니다.

프로그램 내에서 분홍색 부분이 중요한 부분입니다.

50개의 마커 위치를 다 외우게 되서 중요한 부분을 적어보려합니다.

 

 얼굴  ( 4 개 )

얼굴 부분은 모자에 4개의 마커를 붙이면 됩니다.

맨위, 앞, 양옆

뒤는 붙일 필요 없습니다.

 

 가슴, 명치  ( 2 개 )

가슴쪽과 명치 부분에 붙일때는 근육과 뼈를 만져가며 저 위치에 붙이면 됩니다. 

 

 ★ 등  ( 6 개 )

등 부분에는

뒷목 경추 7번 뼈(만져보면 살짝 튀어 나온 뼈)에 1개

양 옆 겨드랑이 부분(완전 겨드랑이가 아닌 살짝 등 안쪽)에 2개

그리고 견갑골(팔을 뒤로 뻗을 때 보이는 뼈)하단 부근에 2개

5개를 위 사진의 노란색 오각형대로 부착하면 되겟습니다.

하늘색 동그란 부분은 견갑골과 골반 사이 허리 부근 쪽 왼쪽에 붙이면 됩니다. 1개

왜 왼쪽에만 붙이냐면 아래 다리부분 설명할 때 같이 설명하겠습니다.

 

 ★ 어깨, 팔  ( 4 개 x 2 )

어깨 바로 위쪽에 1개

팔오금(하늘색 부분, 팔접히는 부분)에서 손목 부분으로 살짝 이동해서 1개

하늘색 부분이 팔꿈치

팔꿈치 위, 아래 1개씩 총 2개

 

어깨 위 쪽 1개

팔오금 쪽 1개

팔꿈치 쪽 2개

총 4개 x2, 8개입니다.

 

 ★ 손 ( 4 개 x 2 )

엄지 첫마디 뼈 부근 엄지가 접히는 부분 쪽에 1개,

손목 경상 돌기 쪽(속목을 만져보면 양옆에 튀어나온 동그란 뼈) 양 옆으로 1개씩 2개,

새끼 손가락 중수기관절 쪽 1개,

총 4 x2, 8개 입니다.

 

 골반 ( 4 개 )

앞 쪽 골반 장골 부분에 각각 1개씩, 2개

 

뒤 쪽 골반 엉덩이 위쪽 각각 1개씩, 2개

총 4개

 

 왼 쪽 다리 ( 4 개 )

다리 부분은 서로 다르기 때문에 왼쪽 다리 먼저 설명하겠습니다.

허벅지 왼쪽(바깥 방향) 가운데에 1개

무릎 기준 위쪽과 왼쪽(바깥 방향)에 각각 1개, 2개

정강이 가운데쪽 1개

총 4개 입니다.

 

오른 쪽 다리 ( 4 개 )

허벅지 오른쪽(바깥 방향) 가운데에 1개

무릎 기준 위쪽과 오른쪽(바깥 방향)에 각각 1개, 2개

정강이 가운데쪽 1개

총 4개 입니다.

 ★ 다리

다리 부분이중요한 이유는 서로 비대칭으로 붙여야합니다.

아까 등 쪽에 왼쪽에만 붙인 것도 이유가 있습니다.

완벽한 대칭으로 붙이게 되면 센서가 왼쪽 오른쪽을 분간하지 못하기에

분간 가능하게 비대칭으로붙입니다.

다만, 너무 비대칭으로 붙이면 스켈레톤이 이상하게 생성되기에 그렇게 큰 격차를 주지 않아도 됩니다.

노란색 사다리꼴이 만들어지면 됩니다.

 

 발 ( 5 개 x 2 )

발은 신발을 신고 위생 신발 같은 천을 추가로 신고 마커를 붙입니다.

발 맨 앞쪽에 1개

엄지, 새끼 발가락 옆쪽 각각 1개, 2개

 

복숭아 뼈에 1개

뒷꿈치에 1개

총 5개 x2 입니다.

 

                                                                                   머리                4개
                                                                                   가슴, 명치       2개
                                                                                   등                    6개
                                                                                   팔 4x2,            8개
                                                                                   손 4x2,            8개
                                                                                   골반                4개
                                                                                   다리 4x2,        8개
                                                                                    발 5x2,         10개

총 50개 입니다.

 

Manus Glove

 

손가락 마디또한 모션캡쳐를 하였습니다.

하지만 위에 있는 슈트로는 손가락 마디의 움직임을 캡쳐하지 못합니다.

그래서 2천만원(?!)에 달하는 Manus Glove(마누스 장갑)을 사용하였습니다.

 

 

장갑의 원리는 블루투스 기능을 생각하면 될 것 같습니다.

컴퓨터에 안테나를 추가하여

장갑과 신호를 주고 받을 수 있게 합니다.

원래 끼고 있던 천 장갑과 손에 붙인 4개의 마커를 제거하고

마누스 장갑을 낍니다.

마누스 장갑에도 마커 4개가 달려 있습니다.

마누스 장갑을 인식 시킬 때 꽤나 고생했습니다.

팔을 8자로 돌리면서 1단계 인식을 하고

총 3개의 모션(손 펴기, 주먹, 피스톨)을 3초간 유지하여

장갑에 제 손을 인식 시킵니다.

계속 실패해서 여러번 시도했는데

아마 장갑에 있는 찍찍이를 꽉 붙이지 않아 조금 헐렁해서

실패하지 않았나 생각해봅니다.

 

 

 모션캡쳐

무대 위에 T자에 서서 양팔을 벌려

3D 모델의 기본 포즈인 T자 자세를 취합니다.

이 때 턱을 들어 정면을 바라보고

팔은 균형을 맞추고

다리 사이를 벌리고 가만히 있어야합니다.

그럼 카메라가 마커를 인식해서 프로그램에 몇개가 인식 중인지 표시합니다.

마커 50개를 붙였기에 50개가 인식 되어야합니다.

 

갯수가 50개 미만인 경우는 다리를 조금 벌려 주거나

프로그램 내에서 어느 부분이 인식이 안되고 있는 지 확인하면 됩니다.

혹은 머리가 길어 등 부분, 뒷목 경추 7번 뼈에 붙인 마커가

인식되고 있지 않을 수 있기에

슈트를 입기전 머리를 묶어 모자 안 쪽이나 자켓 안쪽으로 넣으면 됩니다. 

 

갯수가 50개 초과인 경우는 근처에

명찰, 핸드폰, 비닐 등등 빛을 반사하는 물질이 있어서 그렇습니다.

스켈레톤을 생성할 때는 다 가리고

오직 배우의 마커만 인식 되게 하여 생성합니다.

 

스켈레톤을 만들면 한 번에 성공하거나

실패하는 경우가 있는 데

이 때는 마커의 위치를 다시 확인 하고

프로그램으로 마커의 위치를 확인합니다.

그런데도 생성되지 않는다면

아마 배우의 비율이 적합하지 않을 수도 있습니다.

팔이나 다리가 길거나 짧으면 마커의 위치도 달라지기에

실패할 수도 있습니다.

 

모션캡쳐를 진행할 때에는

무대 가운데에 서서 T자 자세로 시작하고

다른 사람이 레코딩 버튼을 누른 후

연기를 시작하면 됩니다.

모션을 완료했다면 다시 무대 가운데로 가서 T자 자세를 만들고

레코딩을 중지하면 됩니다.

 

녹화한 데이터는 프로젝트 데이터로 남기에

편집모드로 우클릭 후 내보낼 수 있는 형식으로 바꿉니다.

그 후 export할 때는 .bvh 포맷을 사용합니다.

이 때 fps를 확인 하길 바랍니다.

촬영 환경이 120Hz이기에 60fps로 변환하여 출력하였습니다.

 

 데이터 입히기 : 방법 1

 

모션캡쳐 후 출력한 .bvh 파일은 fbx로 변환하는데

블렌더를 사용합니다.

블렌더 좌측 상단에

file -> import -> Motion Capture (.bvh)

그 후 fbx 포맷으로 export하면 됩니다.

원하는 모델을 다운받거나 직접 리깅한 모델이 있을 겁니다.

이제 거기에 데이터를 입히면 되는데

문제는 모션캡쳐한 스켈레톤과 모델의 스켈레톤이 일치하지 않기에

기존에 가지고 있는 모델을 다시 리깅해주고

모션을 클린업 해주면 됩니다.

이 방법은 너무 복잡하기에 제가 사용한 훨씬 쉬운 방법을 설명하겠습니다.

데이터 입히기 : 방법 2

 

일단 모델 구하는 것부터 설명하자면

리깅이 잘되어 있는 모델은 찾기 어렵습니다.

그래서 유명한 캐릭터(저는 메구밍이라는 캐릭터를 사용했습니다.)를 사용하거나

MMD프로그램에 사용하는 모델들을 사용하는 걸 추천합니다.

MMD 모델같은 경우는 게임사에서 공식으로 배포하는 경우(원신)도 있습니다.

 

MMD파일을 불러오는 방법은

https://github.com/UuuNyaa/blender_mmd_tools/releases

블렌더에 mmd tools라는 애드온을 설치하여 불러올 수 있습니다.

 

리타겟팅또한

https://support.rokoko.com/hc/en-us/articles/4410463492241-Install-the-Blender-plugin

Rokoko 애드온을 사용했습니다.

사용 방법은

https://www.youtube.com/watch?v=kLe5zfjJ8Jc

방법 1보다 훨씬 간편합니다.

그저 스포이드로 캡쳐한 데이터를 클릭하고

스포이드로 3D모델의 스켈레톤을 클릭하고

rebuild bone을 하고 리타겟 애니메이션 버튼을 눌러

1분안에 모션을 적용할 수 있습니다.

 

하지만 3D 모델에 영어 이외의 언어(중국어, 일본어)가 섞여있으면

rebuild bone 과정이 원활히 진행되지않기에

영어권에서 만든 모델을 구하거나

직접 뼈 하나하나 이름을 바꾸거나 링크해주면 됩니다.

 

 추가 작업

 

https://www.youtube.com/watch?v=gCT_WG8HcvQ

저는 rokoko 애드온으로 리타겟팅 하고

모델과 모션 전부 bake해서 fbx파일로 내보냈습니다.

그러면 c4d나 마야에서도 그대로 사용할 수있습니다.

c4d로 불러와서 씬과 재질 등을 추가로 작업하였습니다.

 

꽤나 재밌는 경험이였으며

제가 제일 싫어하는 리깅, 캐릭터 애니메이션 부분을

좀 더 이해할 수 있게 되어 좋은 기회였다고 생각합니다.

 

아래에 있는 파일은 위 마커 위치를 표기한 파일입니다.

marker.fbx
1.37MB

'' 카테고리의 다른 글

2학년 2학기 언리얼 엔진 시네마틱 중간과제  (0) 2024.11.02
영상과 마술  (1) 2024.08.05
명함  (0) 2024.06.26
아로나 - 一龠 (일약)  (2) 2024.04.27
첫 글  (0) 2024.04.22

관련글 더보기