VAvatar 제작하기
UniVRM 기반 Humanoid 캐릭터를 VAvatar 로 빌드하고, 감정표현 Emote, 얼굴 BlendShape, 의상 Outfit, 애니메이션 Override 를 커스터마이즈하는 방법.
VAvatar 로 원하는 캐릭터를 VIVEN 에서 사용할 수 있습니다.
VAvatar 는 현재 Humanoid 캐릭터만 지원합니다.
사전 준비
VRM 아바타를 사용하려면 UniVRM 패키지를 먼저 설치해야 합니다.
- 지원 버전: VRM0 / UniVRM 0.121.0
- UniVRM v0.121.0 릴리즈
VRM 아바타를 Unity 로 Import 한 뒤, Import 하려는 아바타와 UniVRM 패키지의 버전이 일치하는지 확인하세요.
![]()
VAvatar 빌드
Import 된 VRM 아바타에 VivenAvatar 컴포넌트를 추가하면 VAvatar 로 빌드할 수 있습니다.
| Field | 설명 |
|---|---|
SDK Character Culling Objects | 1인칭 시점일 때 카메라에서 Culling 할 GameObject 목록 |
SDK Face | 캐릭터의 얼굴 SkinnedMeshRenderer |
SDK Nameplate Offset | 이름표 UI 의 Offset |
![]()
설정이 완료된 Prefab 을 우클릭 → Viven → Build Viven Avatar 를 클릭합니다.
메뉴가 비활성화되어 있다면 Missing 스크립트나 컴파일 에러가 있는지 확인하세요. 빌드된 .vavt 파일을 VIVEN 에 등록하면 됩니다.
커스터마이징
감정표현 — CustomEmoteComponent
사용자 정의 Emote 를 추가하려면 CustomEmoteComponent 를 부착합니다. 각 Emote 항목은 다음 필드를 갖습니다.
| Field | 설명 |
|---|---|
Emote Name | Emote 이름 (UI 에 표시) |
Emote Sprite | Emote 아이콘 |
Emote Clip | 재생할 애니메이션 클립 |
![]()
![]()
얼굴 표정 — FacialExpressionComponent
VAvatar 는 BlendShape 를 사용해 다양한 표정을 표현합니다. FacialExpressionComponent 를 추가하고 다음 필드를 설정합니다.
| Field | 설명 |
|---|---|
Facial Blend Shape Parent | 얼굴 BlendShape 가 설정된 GameObject |
SDK Facial Expression | 얼굴 표정 목록 (Expression Name, Sprite, Blend Shape Values) |
![]()
![]()
Blend Shape Values 의 개수는 Facial Blend Shape Parent 의 SkinnedMeshRenderer 의 BlendShape 개수와 정확히 일치해야 합니다.
팁: SkinnedMeshRenderer 의 BlendShape 값을 직접 조정해 원하는 표정을 만든 뒤, FacialExpressionComponent 의 CopyCurrentBlendShape 버튼을 클릭하면 현재 값을 해당 FacialExpression 항목에 일괄 저장할 수 있습니다.
![]()
![]()
의상 — OutfitComponent
의상을 변경하려면 OutfitComponent 를 추가합니다. 각 Outfit 은 다음 필드로 구성됩니다.
| Field | 설명 |
|---|---|
Preset Name | 의상 이름 |
Thumbnail | 의상 아이콘 |
Cloth Data | 의상에 사용할 SkinnedMeshRenderer 목록 |
![]()
![]()
- VAvatar 가 처음 생성될 때
IsDefault가 체크된 첫 번째 의상이 활성화됩니다. 빌드 전에 캐릭터가 Default 의상 상태와 동일한지 확인하세요. - Outfit 변경 시 현재 Outfit 의 SkinnedMeshRenderer 는 비활성화되고, 새 Outfit 의 SkinnedMeshRenderer 가 활성화됩니다. 예:
Body→Body2로 교체.
![]()
![]()
애니메이션 — OverrideAnimationComponent
이동·점프·Idle 등의 기본 애니메이션을 변경하려면 OverrideAnimationComponent 를 추가하고, 새 SDKOverrideAnimation 에셋을 만들어 지정합니다.
![]()
![]()
Project 창 우클릭 → Create → Viven → Create Override Animation
![]()
예: Idle 애니메이션을 Injured Idle 클립으로 대체하면, VAvatar 가 다치는 듯한 Idle 모션으로 움직입니다.
![]()
![]()