페이스 트래킹

캡처 앱의 웹캠 및 iPhone 페이스 트래킹

이 페이지는 기계 번역되었으며 부정확한 내용이 포함될 수 있습니다.

Motion Capture for VRC Avatar Viewer (이하 「캡처 앱」)는 눈 깜빡임이나 입 움직임 같은 표정도 아바타에 반영할 수 있습니다. 표정 데이터의 획득 방법과 아바타로 보내는 송신 형식을 각각 골라서 사용합니다.

2가지 데이터 소스 (획득 방법)

  • 웹캠 (기본값) PC에 연결한 웹캠 영상에서 표정을 추정합니다. 추가 장비가 필요 없어 누구나 쓸 수 있지만, 볼이나 혀의 움직임은 인식할 수 없는 등의 제약이 있습니다.
  • iPhone (iFacialMocap) Face ID를 지원하는 iPhone과 iFacialMocap (유료 iOS 앱)을 사용하면 ARKit 기반의 52종류 고정밀 표정 데이터를 얻을 수 있습니다. 웹캠보다 훨씬 풍부한 표현이 가능합니다.

얻은 표정 데이터를 어떤 형식으로 아바타에 보낼지는 「표정 송신 형식」에서 선택합니다. 먼저 아바타가 지원하는 형식을 확인한 뒤, 그 형식에 맞춰 선택해 주세요 (자세한 내용은 Step 3 이후 참조).

팁
  • iFacialMocap이 연결되어 있으면 웹캠보다 iFacialMocap의 표정 데이터가 우선됩니다 (몸의 움직임은 계속 웹캠에서 가져옵니다)
  • 송신 형식과 관계없이 iFacialMocap이 켜져 있으면 iFacialMocap의 표정 데이터가 사용됩니다
  • VRChat 연동에 대한 자세한 내용은 VRChat으로 페이스 트래킹 보내기 가이드를 참조해 주세요
1

웹캠으로 표정 인식하기

기본 방법입니다. 아바타 움직이기 가이드의 순서대로 카메라를 시작하면 웹캠에서 표정도 자동으로 추정됩니다. 추가 설정은 필요 없습니다.

웹캠으로 표정 인식하기
웹캠으로 표정 인식하기

1-1. 인식할 수 있는 표정

  • 눈 깜빡임 (양쪽 눈 각각)
  • 모음 (아・이・우・에・오)
  • 시선 (상하좌우)
  • 눈썹 올리고 내리기, 입 벌리고 다물기, 입꼬리 움직임 등

1-2. 인식할 수 없거나 어려운 것

  • 볼 부풀리기, 혀의 움직임
  • 어두운 곳에서는 정확도가 크게 떨어집니다. 얼굴이 뚜렷하게 보이는 밝기가 필요합니다
  • 옆얼굴이나 고개를 숙인 자세 등 얼굴 정면이 보이지 않는 각도
송신 형식 고르는 법
  • 웹캠만 사용할 때는 VRM 표준을 추천합니다. 대부분의 아바타에서 자연스럽게 움직입니다
  • Perfect Sync나 VRCFT도 작동합니다. 다만 위에서 설명한 것처럼 인식할 수 없는 움직임이 있습니다.
2

iPhone으로 고정밀 표정 인식하기 (iFacialMocap)

Face ID를 지원하는 iPhone (iPhone X 이후)을 사용하면 웹캠보다 표정 정확도를 크게 높일 수 있습니다. iFacialMocap이라는 iOS 앱이 필요합니다.

iFacialMocap
iFacialMocap

2-1. 준비물

  • Face ID를 지원하는 iPhone 또는 iPad Pro
  • App Store에서 구매한 iFacialMocap (유료 iOS 앱)
  • iPhone과 PC가 같은 Wi-Fi (LAN)에 연결되어 있을 것

2-2. iPhone 쪽 설정

  1. iPhone에서 iFacialMocap을 실행합니다
  2. 화면에 PC 쪽 소프트웨어와 연결하라는 안내가 표시되면, IP 주소 (예: 192.168.1.10)를 메모해 둡니다
IP 주소가 표시되지 않을 때
  • iFacialMocap의 설정을 열고 「대상 설정」을 확인해 주세요. 「대상 IP 주소」에 값이 입력되어 있으면 표시되지 않습니다. 그 아래에 있는 「대상 설정 초기화」를 누르고 앱을 다시 실행하면 표시됩니다.

2-3. 캡처 앱 쪽 설정

  1. 캡처 앱의 「iFacialMocap의 IP 주소」 칸에 메모해 둔 iPhone의 IP를 입력합니다
  2. 「iFacialMocap 사용」을 ON으로 합니다
  3. 옆의 상태 표시가 「수신 중」이 되면 연결에 성공한 것입니다

2-4. 상태 표시의 의미

상태의미
중지 중「iFacialMocap 사용」 토글이 OFF
IP 미입력iPhone의 IP가 비어 있음. 입력하면 자동으로 연결을 시도합니다
연결 대기 중핸드셰이크는 보냈지만 iPhone에서 응답이 없음 (iFacialMocap이 실행되지 않음 / IP가 틀림 / 다른 네트워크 등)
수신 중표정 데이터를 정상적으로 수신하고 있음

2-5. 인식할 수 있는 표정

ARKit 기반의 52종류 블렌드셰이프 + 머리 회전 + 좌우 시선을 얻을 수 있습니다. 웹캠으로는 인식할 수 없는 볼 부풀리기와 혀도 포함됩니다 (아바타에 해당 블렌드셰이프가 있어야 합니다).

웹캠과 함께 사용하기
  • iFacialMocap을 켜 둔 동안에도 몸・팔・손가락의 움직임은 계속 웹캠에서 가져옵니다
  • 「표정은 iFacialMocap, 몸은 웹캠」이라는 하이브리드 구성입니다
3

아바타가 지원하는 페이스 트래킹 형식 확인하기

표정 송신 형식을 고르기 전에, 지금 표시 중인 아바타가 어떤 페이스 트래킹 형식을 지원하는지 Viewer 앱에서 확인합니다. 지원하지 않는 형식을 고르면 캡처 앱에서 표정 데이터를 보내도 아바타가 제대로 움직이지 않습니다.

지원하는 페이스 트래킹 형식
지원하는 페이스 트래킹 형식
  1. Viewer 앱에서 대상 아바타를 표시합니다
  2. 스트리밍 모드를 ON으로 합니다
  3. 스트리밍 패널에서 「페이스 트래킹」 버튼을 클릭합니다
  4. 창 위쪽 「타입」 버튼 아래에 있는 「사용 가능:」 표시를 확인합니다
지원 형식 보는 법
  • 「사용 가능: VRM/VRChat 기본, Perfect Sync」처럼 현재 로드한 아바타가 지원하는 형식이 표시됩니다
  • 캡처 앱의 「표정 송신 형식」과 Viewer의 「타입」은 이 지원 형식 중에서 같은 것을 선택해 주세요
  • 지원하지 않는 형식을 고르면 표정이 움직이지 않거나 일부 블렌드셰이프만 반영되지 않을 수 있습니다
4-1

표정 송신 형식 (블렌드셰이프 규격) 선택하기

Step 3에서 확인한 아바타의 지원 형식에 맞춰, 캡처 앱의 「표정 송신 형식」 드롭다운에서 선택합니다.

표정 송신 형식 선택
표정 송신 형식 선택

VRM 표준

VRM에 원래 들어 있는 눈 깜빡임・모음・시선 등의 기본 표정을 VMC로 보냅니다. 어떤 아바타에서도 작동하지만 표현은 단순합니다. VRChat 아바타에서도 눈과 입이 움직입니다. 웹캠만 사용할 때의 기본 추천 형식입니다.

Perfect Sync

ARKit의 52종류 블렌드셰이프를 VMC로 보냅니다. Perfect Sync를 지원하는 아바타에서는 입꼬리・눈썹・눈꺼풀의 섬세한 움직임까지 반영됩니다. iFacialMocap과 함께 쓰면 효과적입니다.

VRCFT

VRCFaceTracking 5.x의 Unified Expressions 규격입니다. VRChat 안의 아바타와 같은 표정을 재현할 수 있다는 점이 특징입니다.

팁
  • VRCFT는 기본적으로 아바타에 전용 애드온을 추가해야 합니다. Perfect Sync는 VRChat 아바타든 VRM 아바타든 지원하기만 하면 사용할 수 있습니다.
4-2

표정 송신 켜기

캡처 앱의 송신 부위에서 「표정」을 켭니다. 이미 켜져 있다면 그대로 두면 됩니다.

송신 부위의 「표정」 켜기
송신 부위의 「표정」 켜기
5

Viewer 앱에서 페이스 트래킹 타입 선택하기

Viewer 앱에서 페이스 트래킹 타입 선택하기
Viewer 앱에서 페이스 트래킹 타입 선택하기

Step 3에서 확인한 지원 형식 중에서, 캡처 앱에서 고른 「표정 송신 형식」과 같은 「타입」을 Viewer 앱에서도 선택합니다. Viewer의 타입은 스트리밍 모드 툴바 → 「페이스 트래킹」 버튼으로 여는 창에서 전환합니다.

5-1. 창 열기

  1. Viewer 앱에서 아바타를 표시합니다
  2. 스트리밍 모드를 ON으로 합니다
  3. 스트리밍 패널에서 「페이스 트래킹」 버튼을 클릭합니다

5-2. 타입 전환하기

창 위쪽의 「타입」 버튼을 클릭할 때마다 VRM/VRChat 기본 → Perfect Sync → VRCFT 순서로 바뀝니다. 캡처 앱에서 고른 것과 맞춰 주세요.

Viewer의 「타입」캡처 앱의 「표정 송신 형식」
VRM/VRChat 기본VRM 표준
Perfect SyncPerfect Sync
VRCFTVRCFT

5-3. 주의 사항

  • VRCFT를 선택한 동안에는 카테고리별 표정 강도 슬라이더가 비활성화됩니다: VRCFT는 VRChat OSC를 통해 표정 파라미터를 직접 구동하므로 Viewer의 블렌드셰이프 강도 조정이 적용되지 않습니다
선택

표정만 VRCFaceTracking에 맡기기

몸의 모션만 캡처 앱에서 보내고, 표정은 VRCFaceTracking에서 보내도록 구성할 수 있습니다. iFacialMocap은 물론 VRCFaceTracking이 지원하는 다양한 모듈을 사용할 수 있습니다.

기본적으로 VRCFT와 페이스 트래킹 장치를 잘 아는 고급 사용자를 위한 설정입니다

[캡처 앱] →VMC Protocol→ [Viewer 앱]
[iFacialMocap] → [VRCFaceTracking] →VRChat OSC→ [Viewer 앱]

역할 분담

담당송신 경로보내는 내용
모션VMC 프로토콜몸, 머리, 팔, 손 등의 자세
표정VRChat OSC눈 깜빡임, 입, 눈썹, 시선 등의 페이스 트래킹

순서

  1. 캡처 앱에서 평소처럼 모션 송신을 시작합니다
  2. 캡처 앱의 표정 송신을 OFF로 합니다
  3. VRCFaceTracking을 실행하고, VRCFaceTracking에서 iFacialMocap과 연결합니다
  4. Viewer 앱의 페이스 트래킹 타입을 VRCFT로 바꾸고 수신을 ON으로 합니다
  5. VRCFaceTracking이 Viewer 앱을 연결 대상으로 인식하고, Viewer의 아바타 표정이 움직이는지 확인합니다
VRCFaceTracking
VRCFaceTracking
표정 송신 끄기
표정 송신 끄기
주의 사항
  • Viewer 앱을 수신 상태로 만든 다음 VRCFaceTracking을 실행해 트래킹 상태로 만들어 주세요. 다만 애드온에 따라서는 순서를 반대로 해야 인식되는 경우도 있습니다.
  • VRCFaceTracking을 한 번 다시 실행하면 해결되는 경우도 있습니다
  • 표정이 움직이지 않는 경우, 아바타에 넣은 VRCFT 애드온 쪽의 FX 제어가 원인일 수 있습니다. 특히 VRCFury로 생성된 애드온(MrSauce 애드온 등)에서는 VRCFaceTracking을 먼저 실행한 다음 Viewer를 수신 상태로 만들어 주세요.
  • 캡처 앱의 표정 송신을 OFF로 하는 이유는 VMC를 통한 표정과 VRChat OSC를 통한 표정이 이중으로 반영되는 것을 막기 위해서입니다. 몸의 모션 송신은 ON 그대로 두어도 괜찮습니다
  • Viewer 앱을 VRCFT로 바꾸지 않으면 VRCFaceTracking에서 오는 VRChat OSC 표정 파라미터를 받을 수 없습니다
  • VRCFaceTracking과 Viewer 앱의 자세한 연결 확인 방법은 VRCFaceTracking 연동 가이드를 참조해 주세요

위의 방법을 모두 시도해도 움직이지 않는다면 제작자에게 문의해 주세요. 다만 해결하지 못할 가능성도 높습니다