CREATE YOUR WORLD
Interaction with Object

ZEPETO 캐릭터에 오브젝트 부착하기

9min

ZEPETO 캐릭터에 오브젝트를 부착하여 캐릭터가 움직일 때 오브젝트도 함께 움직이도록 합니다.

Document image




1단계 : 객체 프리팹 준비하기



먼저, 객체를 프리팹으로 변환해야 합니다. 객체를 생성하고, 자산 폴더로 드래그하여 프리팹으로 만듭니다.

객체 프리팹의 예
객체 프리팹의 예




2단계 : 객체를 캐릭터의 특정 부분에 부착하는 스크립트



  • 장면에서 ZEPETO 캐릭터 생성 코드를 기본값으로 구현합니다.

📘 다음 가이드를 참조하십시오. [ZEPETO 캐릭터 만들기]



단계 2-1 : 스크립트 작성하기

1) 계층 만들기 > 빈 객체 만들기 및 이름을 AttachObject로 변경합니다.

2) 프로젝트 만들기 > 만들기 > ZEPETO > TypeScript 및 이름을 AttachObject로 변경합니다.

3) 아래와 같은 샘플 스크립트를 작성합니다.

TypeScript




  • 스크립트 흐름은 다음과 같습니다:
    • Start()
      • ZepetoPlayers.instance.OnAddedLocalPlayer 이벤트 리스너를 등록하여 로컬 플레이어가 추가될 때 실행됩니다.
      • 로컬 플레이어를 _localCharacter 변수에 설정합니다.
      • _localCharacter의 애니메이터 컴포넌트를 가져오고, bodyBone에 지정된 위치를 가져와서 prefItem에 지정된 프리팹을 해당 위치에 생성합니다.



STEP 2-2 : 인스펙터에서 부착 위치 설정하기

1) 스크립트 작성을 마친 후, 스크립트를 AttachObject 객체에 추가합니다.

2) 검사기에서 Pref Item, Body Bone을 할당합니다.

  • Pref Item은 객체 프리팹입니다.
  • Body Bone은 객체가 생성될 위치입니다.
    • 왼손을 선택하여 객체를 손에 쥐고 있는 것처럼 보이게 합니다.



예제 스크립트 설정 화면
예제 스크립트 설정 화면




3) 재생 버튼을 눌러 실행하면 ZEPETO 캐릭터의 왼손에 객체가 부착된 것을 볼 수 있습니다.



3단계 : 적용



원하는 Body Bone 위치에 객체를 동일한 방식으로 부착할 수 있습니다.



다음은 BuildIt에서 Neck Pillow 객체를 캐릭터의 목에 부착하여 ZEPETO 캐릭터가 목베개를 착용하고 있는 것처럼 보이게 하는 예입니다.

Document image




  • 원하는 모양을 얻기 위해 객체의 위치와 회전을 적절하게 조정할 수 있습니다.
객체 프리팹 구성 예
객체 프리팹 구성 예




  • 인스펙터에서 Neck Pillow 객체를 Pref Item에 할당하고 Body Bone에 Neck을 선택합니다.
예제 스크립트 설정 화면
예제 스크립트 설정 화면