VRChat 마이너 갤러리 저장소

제 목
강좌/정보 월드 제작 강좌)플레이어 추적 - 제작과 원리
글쓴이
조개껍데기
추천
5
댓글
6
원본 글 주소
https://gall.dcinside.com/vr/249653
  • 2019-08-21 23:19:33
							

주의)이번 강좌는 이해하기 많이 힘들 수 있습니다.



 <- 프리팹


프리팹은 PlayerTracking.zip.png 다운 후 .png빼고 사용하자

---------무작정 따라하기------------

이러한 구조로 우선 빈 오브젝트를 만들어준다.


최상위 오브젝트에 canvas 컴포넌트를 추가, 1)Rect Transform의 모든 수치를 0으로 만들고 2)canvas컴포넌트를 비활성화 시킨다.

그 후 3)Render Mode를 Screen Space - Camera로 설정하고 놔둔다. 이 후 절대 컴포넌트를 건들이면 안된다.


하위 오브젝트에 button 컴포넌트를 추가한다. 그 후 애니메이션을 하나 추가해준다.


애니메이션 시간 표시줄 바로 아래에 우클릭하여 Add Animation Event - 그렇게 해서 생긴 흰 밥풀 클릭 - 우측의 function에서 Press()선택


애니메이터에 들어간다. 변수를 하나 추가해주고 체크. Any State와 현재 추가된 애니메이션을 연결한다. (Any State 우클릭후 make transition)

빠져 나가는 시간을 0으로. 조건은 위에 추가한 변수가 true일 때로 설정한다.


다시 하위 오브젝트로 돌아와서 button 컴포넌트의 On Click()에 위 사진과 같이 추가해준다. 수치는 상관은 없지만 저렇게 하자.


상위 오브젝트로 와서 VRC_UI shape, Animation, Box Collider 컴포넌트 추가. Animation, Box Collider 컴포넌트는 꺼두기.


디버그 모드로 들어가서 Canvas의 Plane Distance를 0으로 설정. 그 후 다시 Normal 모드로


빈 애니메이션을 하나 만들어주고 선택후 우측창에서 Debug모드로 그 후 Legacy체크. 다시 Nomral로 돌리고 Warp mode가 Loop로 돼있는지 확인하고


애니메이션 내용은 이렇게 짜준다.


아까 만들어둔 Animation 컴포넌트에 방금 만든 애니메이션을 넣어준다.


이제 다시 하위 오브젝트로 돌아가서 Button 컴포넌트에 사진 처럼 하나 더 추가해준다.


다시 다른 하위 오브젝트를 추가해준다. 이름은 pos로 했고, 이 pos오브젝트는 이제 설정한 좌표대로 플레이어를 따라다닌다. 

사진에서는 0,0,1로 했으니 플레이어의 좌표.Z + 1떨어진 상태로 따라다니는거다.


테스트 목적으로 pos밑에 구체를 하나 추가해봐서 잘 따라오는지 확인해봐라.


이제 다른 오브젝트가 이 오브젝트를 Follow Target 컴포넌트를 이용해 따라다니게 만들면 그게 플레이어를 따라다니게 만들게 된 것이다.

다만 이럴경우 로컬이기 때문에 자신만 오브젝트가 날 따라오는 것처럼 보이고 다른 사람들한테는 안보일 것이다. 이에 대한 해결 방법은

다음 강좌에 계속한다.

--------------원리-----------------


이번 강좌에서 말하는 플레이어 추적이란, 플레이어를 따라다니는 오브젝트를 만드는 것을 말한다.


아바타 제작 같은 경우 아바타의 바디에 넣어두면 같이 따라다니지만, 월드는 그럴 수가 없다.


방법을 생각해보자.


컴포넌트중 follow target 컴포넌트에 target을 비워두면 플레이어를 따라간다. 

그러나 이 방식은 월드의 방장만 따라간다는 점이 있다.

응용하여 send RPC액션을 이용해 방장을 넘겨주면 가능은 하지만 하나의 플레이어 밖에 오브젝트가 못따라간다는 단점이 있다.


그래서 canvas라는 ui컴포넌트를 이용한다. canvas는 플레이어의 카메라 좌표계를 따라다닐 수 있다.

원하는 좌표로 만들기 위해(플레이어의 상대 좌표를 0,0,0으로 만들기 위해) 모든 좌표를 0으로 설정했지만 카메라 좌표계를 따라 다니게 하면 강제적으로 수치가 고정이 된다.

따라서 0으로 전부 바꾸고 우선은 컴포넌트를 꺼둔다.


이제 하위 오브젝트의 애니메이션이 작동하여하위 오브젝트의 button컴포넌트를 작동시키고 (애니메이터 내용을 보면 무한 반복)  

이 컴포넌트에서 canvas의 크기를 조절하는 함수를 호출하여 canvas 컴포넌트를 깨운다.


그 후 상위 오브젝트의 애니메이션을 작동시킨다. 정확히는 애니메이션에서 설정한 상태로 만든다.

이 애니메이션은 canvas의 크기를 0에서 1로 고정 시켜주는 역할을 한다.


정확하진 않지만 canvas에도 충돌 판정이 있어서 box collider를 넣어주고 컴포넌트를 꺼둔다. 그럼 충돌 판정이 없어진다.


이렇게 플레이어를 따라다니는 시스템이 완성되게 된다.


포동포도 2019.08.21 23:20:20
으ㅡ음 2019.08.21 23:24:45
꿀뚤 ?? - dc App 2019.08.21 23:25:22
조개껍데기 사실상 꼼수 이용한건데 udon인지 뭔지 나오면 이런짓 더이상 안해도 되길 바람 2019.08.21 23:26:52
조개껍데기 실수, 프리팹 재업 2019.08.21 23:31:41
ㅇㅇ 으윽 머리가 14.42 2019.08.21 23:41:35
번호 분류 제목 글쓴이 날짜 추천
343498 일반 누가 강좌가 서순을 틀려먹을줄 알았냐고 12 mechiba 2020-01-06 0
343497 일반 오른쪽만 연결되고 왼쪽은 없어짐 라피셸 2020-01-06 0
343496 일반 11 반다이몰 2020-01-06 2
343495 일반 풀트하면 존나 하고 싶은거 8 liar 2020-01-06 0
343494 일반 사람들 몰려잇는데 너무 무서워 11 어린콩 2020-01-06 0
343493 일반 퍼지 벗기려면 블렌더 가야됨? 8 ㅇㅇ 110.70 2020-01-06 0
343492 일반 오늘 피방 부랄챗 할 예정 10 카이카미 2020-01-06 0
343491 일반 lenovo mr에다가 오큘러스 터치 컨트롤러 써도됨 ? 6 라피셸 2020-01-06 0
343490 일반 야 아바타들 팔이 앞으로 굽는다고햇잖아 나루호도 2020-01-06 0
343489 일반 역시 가상보다는 현실이 좋더라 14 정말모르겠다 2020-01-06 0
343488 일반 포차 다녀왔음 5 밍모 2020-01-06 0
343487 일반 주딱아 나 완장줘라 뉴비들 찾는데이터 찾아주는데 5 반다이몰 2020-01-06 0
343486 일반 1월 10일 4시간 대실 무제한 뚱녀와 떡치기 대첩을 준비했다 8 반다이몰 2020-01-06 1
343485 일반 GP02 핵바주카 모델 있냐? 8 ㅇㅇ 211.59 2020-01-06 0
343484 일반 팔도비빔면 먹을때 조심해야됨ㄷㄷ 19 tntnt 2020-01-06 0
343483 일반 니들 자연풍경월드 잘살펴봐라 특히 식물 일일히 표현한곳 특히! 9 반다이몰 2020-01-06 0
343482 일반 감정쓰레기통구합니다 7 블프 2020-01-06 0
343481 일반 업로드 버튼 누르기 직전에 이러는거 못고침? 24 mechiba 2020-01-06 0
343480 일반 이 게임은 제한된 환경의 유니티 실험장임 3 ㅇㅇ 211.59 2020-01-06 0
343479 일반 나도 친구가 부얄시작하면 좋겠다... 6 세이렊 2020-01-06 0
343478 일반 보추 5 Bing 2020-01-06 8
343477 일반 정말로 감정쓰레기통이 필요하면 정신과를 가라 5 ㅇㅇ 218.146 2020-01-06 0
343476 일반 60만폴리곤 벚나무 링크 찾아옴 4 반다이몰 2020-01-06 0
343475 질문 메뉴창 열면 눈 텍스쳐 깨짐.. IIllIIIIllIl 121.139 2020-01-06 0
343474 일반 나 건담 파일 다찾다보니까 MMD 배포되는거 찾아봐서 니들이 찾는거찾아줌 9 반다이몰 2020-01-06 0
343473 일반 이게..아타시..? 3 dox 2020-01-06 0
343472 일반 첫끼 팔도비빔면 1.5개 2 레레땅 2020-01-06 0
343471 일반 일단 사보고싶은아바타들이랑 부스페이지에서 눈길도 안가는거 3 반다이몰 2020-01-06 0
343470 일반 벚나무 이쁜 모델없어? 7 후라이드맛치킨 2020-01-06 0
343469 일반 밀크 표정 자는표정으로 바꾸는거 아는사람 17 OwO 2020-01-06 1
343468 일반 주말동안 1200키로 운전함 3 츄르 2020-01-06 0
343467 일반 아니 과몰입을 왜하냐고 ㅋㅋ 8 계절을안고서 2020-01-06 0
343466 일반 과몰입하면서 남은건 정신병과 빚뿐... 15 ㅇㅇ 218.146 2020-01-06 0
343465 일반 흑마법쓰게해줘 4 헌책 2020-01-06 0
343464 일반 나도 과몰입 상대가 있었으면 좋았을까 5 Cotori 2020-01-06 0
343463 일반 이 디씨콘 개귀엽네 2 Cotori 2020-01-06 0
343462 일반 점심 어떻게 하지 4 Bing 2020-01-06 0
343461 일반 안내원 표정 겹치는거 이게 문제였네 6 mechiba 2020-01-06 0
343460 일반 갤럼한테 바이브 중고 살려다가 임마 파토나서 딴매물찾는데 5 반다이몰 2020-01-06 0
343459 일반 저녁으로 밀면 먹을까 아니면 16 양산형이세계물 2020-01-06 0
념글 삭제글 갤러리 랭킹