Zepeto map

haechi·2022년 2월 10일
0

Zepeto

목록 보기
1/2

인턴기간동안 회사의 사무실을 제페토로 구현하는 과제가 주어졌다.
기본 맵은 제페토 buildit으로 대부분 제작하다가 오브젝트간 상호작용 및 세부 설정을 위해서 Unity 내에서 작업하기 위해 Load하게 되었다.

빌드잇에서 제작한 맵을 로드하는 방법은 공식 문서에 잘 나와있다.
https://studio.zepeto.me/kr/guides/Creating-Your-Item

현재까지 제작한 맵을 유니티로 불러왔을 때 일부 오브젝트의 위치와 회전값, 스케일 까지 모두 변경되어 쓸 수 없는 상태가 되어 현재 문의중이다.


우선 못쓰게 된 오브젝트를 유니티 내에서 재구현하였다.

이제 유니티에서 적용한 material이 제페토 내에서도 문제없이 보여지는지 확인하고 싶어서 제페토 스튜디오의 월드 제작 - 테스트를 하려 하였으나, 카메라와 캐릭터 생성이 되질 않아서 먼저 script를 생성해서 적용하기로 했다.
Typescript를 사용한다.

import { ZepetoScriptBehaviour } from 'ZEPETO.Script'
import {SpawnInfo, ZepetoPlayers} from "ZEPETO.Character.Controller";

export default class CharacterController extends ZepetoScriptBehaviour {

    Start() {
        ZepetoPlayers.instance.CreatePlayerWithZepetoId("", "", new SpawnInfo(), true);
        ZepetoPlayers.instance.OnAddedLocalPlayer.AddListener(()=>{
            let _player = ZepetoPlayers.instance.LocalPlayer;
        })

    }

}

https://studio.zepeto.me/kr/guides/character-control
https://ajh322.tistory.com/366?category=930532
공식 문서와 해당 블로그의 글을 참고했다.

해당 스크립트를 빈 오브젝트에 넣고 플레이를 하면
아래와 같이 캐릭터가 생성된다.

생성되면 자동적으로 이런 조작 인터페이스가 생기는 듯하다.

현재 모습은 기본 생성 코드로 인해 빡빡이다. 여기서 내가 사용하고자 하는 아바타를 보여주려면 코드의 일부분 수정이 필요하다.

ZepetoPlayers.instance.CreatePlayerWithZepetoId("", "", new SpawnInfo(), true);

이 부분에서 앞 "","" 빈칸 두개가 있다. 순서대로 playerId, zepetoId이다.
자신의 id를 입력 후 game Scene을 보면 해당 id의 아바타가 나오게 된다.

profile
공부중인 것들 기록

2개의 댓글

comment-user-thumbnail
2022년 2월 10일

오 멋있어요~~~ ㅎㅎㅎㅎ 응원합니다!

답글 달기
comment-user-thumbnail
2022년 2월 10일

오 멋있어요~~~ ㅎㅎㅎㅎ 응원합니다!

답글 달기