게임 맵/공포 맵을 보다 보면, 세이브 포인트를 지정해두는 맵이 있다. 이런 맵은 리스폰을 하면 지정된 장소에서 스폰된다.
어떻게 해야할지, 간단하게 생각해보자.
플레이어는 VRCWorld오브젝트가 있는 곳에서 생성되고 리스폰하면 그쪽으로 이동한다.
그렇다. VRCWorld오브젝트의 좌표를 바꾸면 된다.
좌표는 어떻게 바꿀까? https://gall.dcinside.com/m/vr/97842 이 강좌대로 하면된다.
근데 저 방식은 sendRPC를 이용한 좌표 변경은 모든 플레이어에게 적용되기 때문에 모든 플레이어의 리스폰 장소가 바뀔 것이다.
그럼 로컬 방식으로 좌표를 이동시킬 수 있는 방법을 생각해보자.
애니메이션을 이용하면 된다.
애니메이터에 대한 기본 지식이 필요하다. 모른다면 배우자.
https://gall.dcinside.com/m/vr/190335
우선 VRCWorld에 애니메이터를 만들어 주고 loc변수가 0일 때는 anim1이 실행되고 loc변수가 1일 때는 anim2가 실행되게 해뒀다.
anim1에는 VRCWorld의 좌표가 0,0,0으로 이동하게 해두었고 (사진에 보이는 구체는 VRCWorld의 위치)
anim2에는 VRCWorld의 좌표가 10,0,0으로 이동하게 해두었다.
<style type="text/css"><!--td {border: 1px solid #ccc;}br {mso-data-placement:same-cell;}--></style>
그리고 빨간 버튼을 누르면 VRCWorld의 애니메이터에 있는 loc변수를 바꾸게 하였다. (local로 하였으므로 개인 적용)
이렇게 하면 왼쪽에 있는 빨간 버튼을 누르면 리스폰할 때마다 파란색 영역에서 리스폰 될 것이다.
<-유니티 패키지
예시파일을 동봉하였다. 뒤에 .png를 빼고 임포트 해서 쓰자. VRCSDK는 미리 넣어놔야한다.