VRChat 마이너 갤러리 저장소

제 목
강좌/정보 월드 제작 기본 강좌 - 3 : 프리팹 사용하기와 트리거 버튼
글쓴이
xx
추천
8
댓글
8
원본 글 주소
https://gall.dcinside.com/vr/133190
  • 2019-03-19 09:01:20
  • 220.72
							

전글 : https://gall.dcinside.com/mgallery/board/view/?id=vr&no=132675


저번에 제작하던 글에 이어서

몇 가지 장난을 더 쳐봅시다.




저번에 만들었던 월드인데 이대로는 좀 심심하죠?

유니티에는 제작물을 그대로 재활용하기 쉽도록 만든 프리팹이라고 하는 기능이 있습니다.

월드에 들어가있는 VRCWorld나 VRCMirror도 프리팹이에요.


간단히 말해 통짜로 저장하는 기능이죠.


이해를 쉽게 하기 위해서 지금 이 망루를 프리팹화시켜보겠습니다.

방법은 간단한데, 프리팹으로 만들고 싶은 오브젝트를 하이어라키에서 프로젝트로 드래그해주면 됩니다.



이제 이 프리팹은 제가 설정해놓은 스케일(크기)값이나 힘들게 박아놓은 콜라이더도 전부 저장한 상태가 됩니다.

만약 제가 똑같은 망루를 월드에 3~4개씩 배치하게 되거나, 여기서 만든 망루를 다른 월드에 배치할 때 유용하겠죠?


자, 이번엔 반대로 다른 사람들이 만들어놓은 프리팹을 쓰는 것도 가능합니다.


잠깐 URL 하나를 확인하고 갑시다.


https://docs.google.com/spreadsheets/d/e/2PACX-1vTP-eIkYLZh7pDhpO-untxy1zbuoiqdzVP2z5-vg_9ijBW7k8ZC9VP6cVL-ct5yKrySPBPJ6V2ymlWS/pubhtml


위 주소는 VR챗 공식 디스코드 월드 채널에 올라가 있는 VR챗 프리팹 모음입니다.

많은 사람들이 만들고 배포하고 있는 프리팹들을 모아놓은 것이죠.

상당히 유용하고 재미있는 것들이 많습니다.


원하는 녀석을 스프레드시트에서 찾아서 다운로드를 받고, 유니티패키지 열어서 임포트 시켜줍니다.

경우에 따라 유니티 패키지가 아니라 그냥 폴더채로 들어가있는 경우가 있는데, 그러면 프로젝트 안에 넣어주면 됩니다.


여기서는 WACOWater 라는 녀석을 써보도록 합시다.  최신에서 제대로 작동하지 않습니다. 주의하세요. 아래 내용은 참고만 하시기 바랍니다. 

폴더 안을 살펴보니 프리팹 파일이 있네요. 그대로 드래그해서 하이어라키나 씬에 던져줍니다.






와! 워터!


이제 깔려있는 프리팹을 제 취향대로 만져주도록 하겠습니다. 크기부터 바꾸고...

구조를 보아하니 내부에 있는 Plane의 크기를 조절해주면 될 거 같군요. 리플렉션 프루브라는 애도 들어있네요. 얘는 내버려둘게요.

콜라이더도 들어있지만 이미 바닥에 콜라이더를 깔았으니 지워주겠습니다.

여기서 이렇게 물을 집어넣었는데, 물을 다룰 때에는 주의하셔야할 점이 있습니다.


1. 느낌이 오시겠지만 일단 물은 렉이 걸립니다.

특히 이쁘게 만든 물 쉐이더일 수록 주의를 해야겠죠? 얘가 꿈틀거리는 걸 보니 벌써 느낌이 싸합니다.


2. VR을 지원하지 않는 물 쉐이더들이 꽤 있습니다.

싱글패스 스테레오 뭐시기하는 쉐이더가 필요한데 저도 모르고 님들도 모르겠죠? 일부 물 쉐이더는 왼쪽 눈에만 물이 비치거나 해서 원치 않는 시각 테러가 될 수 있습니다. 당연히 아까 위에 올린 VRChat Prefab에는 VR 지원 물 쉐이더들이 올라와있을 것입니다.



2번이야 다 고려해놨지만 1은 어떻게 하죠? 그야 물을 끄는 버튼을 넣으면 그만이죠 ㅎㅎ

월드에 이미 거울도 들어있으니 이 껐다 켰다하는 버튼을 만드는 법을 다뤄보도록 하겠습니다.


이 버튼을 만들기 위해 VRC Trigger라고 하는 애를 쓸 것입니다.


VRC 트리거라는 애가 뭐냐면 조건(트리거)을 만족시키면 특정한 일(액션)을 일으키는 VRC용 스크립트입니다.

SDK를 넣으면 자동으로 들어있어요.


일단은 버튼으로 쓸 물건이 필요하니 큐브를 만들어주세요.


설마 아직 큐브를 만들 줄 모르는 건 아니겠죠?


Add component -> VRC Trigger 를 추가해줍니다.

(Relay 아닙니다.)




그럼 인스펙터에 요로코롬 VRC_Trigger라는 애가 나옵니다. 사진에 빨간색으로 체크해둔 곳 있죠? 클릭하면 "트리거"를 고를 수 있습니다.

영어로 잔뜩 나올텐데, 나중에 천천히 살펴보면서 하나 하나 알아보세요.

https://docs.vrchat.com/docs/trigger-summary 여기에도 영문으로 자세히 설명이 되어있습니다.


일단은 OnInteract를 골르고 옆의 Add를 눌러주세요.

"이 트리거가 달려있는 물체를 클릭할 때"에 해당되는 트리거입니다.

그 다음에는 액션을 넣어줘야겠죠?


넣기 전에 Advanced Mode를 체크하고, AlwaysBufferOne을 Local로 바꿔줍니다.

이걸 브로드캐스트 타입이라고 하는데, 이 행동이 어디까지 영향을 미치냐를 의미합니다. 흔히 말하는 로컬이라는게 이겁니다.


잠깐 자주 쓰는 브로드캐스트 타입에 대해서 소개하자면


Local : 해당 트리거를 발동시킨 사람만

Always : 누구나.

Master : Always와 같지만 마스터만이 트리거를 발동시킬 수 있음.

Owner : Always와 같지만 오너이 트리거를 발동시킬 수 있음.

???Unbuffered : 트리거가 발동한 시점에 있던 사람들만

???BufferedOne : 뒤늦게 들어온 사람도 한번은


이 됩니다. ???Unbuffered나 ???BufferedOne은 Always나 Owner 등과 섞여서 쓰여요.

잘 모르겠으면 항상 AlwaysBufferedOne이나 Local을 쓰시면 됩니다.


마스터란 건 해당 인스턴스에 가장 먼저 들어온 사람이고, 그 사람이 나가면 다른 사람으로 바뀝니다.

오너라는 건 해당 물체의 싱크에 대해 우선권을 가진 사람입니다. 손으로 물건을 집거나 하면 그 사람이 오너로 바뀝니다.

뭔지 잘 모르겠죠? 이런 건 나중에 가야 쓸 일이 생길 겁니다.


그 뒤 밑의 플러스 버튼을 누르고 Basic Event -> SetGameObjectActive를 넣어줍니다.
이 액션은 물체를 껐다 켰다 해주는 액션입니다.

액션에 SetGameObjectActive라고 뜰텐데, 마우스로 클릭해서 선택해주면 상세설정이 가능해집니다.

상세설정은 액션마다 달라요.




주목할 부분은 리시버라고 적힌 부분과 오퍼레이션이라고 적힌 부분입니다.

리시버라는 건 어떤 물체가 이 액션의 영향을 받을 것인지 설정하는 부분입니다. 일단 거울부터 껐다켰다 해봅시다.

플러스 (+) 버튼을 누르면 None (Game Object)라고 뜨면서 오브젝트를 넣을 수 있게 변합니다. 거울을 하이어라키에서 드래그해서 넣어줍니다.


그 뒤 Operation을 False에서 Toggle로 바꿔줍니다. False는 아예 꺼버린다는거고 True는 반대로 켜준다는 겁니다.

Toggle은 꺼져있으면 키고, 켜져있으면 끄는거죠.

참고로 로컬이 아닌 경우에는 토글은 쓰지 않는게 좋습니다. 동기가 밀릴 경우 사람마다 다르게 보이기 좋거든요.


마지막으로 Interaction Text를 Mirror 로 바꿔서 알기 쉽게 해주고,

버튼으로 집어넣은 큐브를 적절한 위치에 배치해줍시다.




참 쉽죠?


이제 같은 요령으로 물도 꺼보도록 하겠습니다만... 숙제입니다.

물 프리팹을 넣지 않았다, 하시는 분들은 자기가 원하는 다른 물건이나 프리팹을 비활성화시키시면 됩니다.

이 큐브를 Ctrl+D로 복사한 뒤 리시버만 바꿔주면 날로 먹을 수 있겠죠?


완성하셨으면 테스트입니다. 아무튼 잘 모르겠을 때 테스트 버튼 한번 누를 때마다 월드 퀄리티가 1씩 올라간다고 보시면 됩니다.



망루에서 물을 내려다볼 수 있는 띵월드지만 미코는 키가 작아서 못내려다본대


질문 있으면 괘념치 말고 답글에 남겨주세요~


liar 2019.03.19 09:03:49
Byanka 와 워터!! 175.223 2019.03.19 09:09:42
Byanka 맨땅 헤딩으로 일일히 테스트해가면서 만들었더니 죽겠습니다. 강좌 좋아요 175.223 2019.03.19 09:12:55
xx 사실 앵간한 건 유튜브 검색하면 많이 나옵니다. 영문이나 일문 쪽은 국내보단 월드 제작 자료가 풀려있으니 구글 번역을 친구 삼으셔요. 220.72 2019.03.19 09:15:34
검은연 2019.03.19 09:17:14
Byanka Wacowater 따라 써봤는데 이거 VR에서 엄청 크게 반사되고 난리나네요.. 175.223 2019.03.19 23:35:04
xx 현 시점에서 WACO가 VR에서 제대로 표시되지 않는다고 하네요 ㅡㅡ;; 다른 물 쉐이더 사용법을 올려드리겠습니다. 220.72 2019.03.20 11:43:29
Byanka 열심히 찾고 있는데 쉽지 않네요잉 ㅠ 125.132 2019.03.20 12:36:00
번호 분류 제목 글쓴이 날짜 추천
133388 일반 지금 만드는곡 공개 momono 2019-03-19 0
133387 일반 트래커 윗부분 좀 가려저도 되나요? 2 Laya1222 211.36 2019-03-19 0
133385 일반 이런느낌 좋아 5 경기군포의이진성 2019-03-19 0
133384 일반 누가 뿔이 손잡이라고 말했는가 10 _코니 2019-03-19 0
133383 일반 나땜에 부모님싸우면 조용히 있어야겠지 6 안토시안 2019-03-19 0
133381 일반 안경안쓰고 vr하니까 시야 흐려가지고 하고나면 꿈꾼 느낌듬 ㅇㅇ 175.196 2019-03-19 0
133380 일반 오딧세이 플러스 mr 시우시이 2019-03-19 0
133379 일반 이게임하다가 배운거있어 3 ㅇㅇ 175.223 2019-03-19 0
133378 일반 오늘읁 조앗다 4 경기군포의이진성 2019-03-19 0
133377 일반 철권 입문장벽중 하나가 조이스틱인데 10 RUReady 2019-03-19 0
133376 일반 븨알챗 입문난이도가 너무 높긴함 5 여주다 2019-03-19 0
133375 일반 지금 나만 서버 팅겨나감?? 2 애룽 2019-03-19 0
133374 일반 근데 뚜따하는거 은근 빡칠때 있음. 5 magicatz 2019-03-19 0
133373 일반 오늘도 보람찬 잠수 1 너랑안놀거야 2019-03-19 0
133372 일반 머더 재밌었어요 !! 3 RUReady 2019-03-19 0
133370 일반 본인 기숙사물컵ㅁㅌㅊ? 13 친추안받음 2019-03-19 0
133369 일반 노라캣 보구갈래? 4 magicatz 2019-03-19 0
133368 일반 손아프다 악보 만들러감 ㅂ 1 momono 2019-03-19 0
133367 일반 양심고백) 자러간다 해놓고 잔적 없음 3 _YS_ 2019-03-19 0
133366 일반 오큘러스에 대한 희망을 버려주세요 1 여주다 2019-03-19 0
133365 일반 일본 신사 맵 사라졌어? 2 asd1 1.236 2019-03-19 0
133363 일반 눈 깜빡이는 아이트래킹이 입으로 가있는거같은데ㅜㅜ 2 혀뇽 2019-03-19 0
133362 일반 h방 고고한 음악가 1 momono 2019-03-19 0
133361 일반 페이리아 머리 바꿔봤는데 1 Ƶᴇɴᴏɴ 2019-03-19 0
133360 일반 오큘러스 풀트 나오면 4 엘렝 2019-03-19 0
133358 일반 그는 신이야!!!!!!!! 2 ㅇㅇ 124.51 2019-03-19 6
133357 일반 유튭방에서 생각없이 영상보다 개터졋다 1 경기군포의이진성 2019-03-19 0
133356 일반 고작 손푸는거에 wow 라고 말해주다니 2 momono 2019-03-19 0
133355 일반 1대1방 아님? momono 2019-03-19 0
133354 일반 보고싶당... 5 ㅇㅁㅇ! 2019-03-19 0
133353 질문 님들 블렌더 픽스모델 오류 질문좀 급함 1 ㅇㅇ 180.226 2019-03-19 0
133352 일반 과몰입하는법좀 1 ㅇㅇ 175.223 2019-03-19 1
133351 일반 뭘 어떻게 해야 바이브에 바퀴벌레가 ㅋㅋㅋㅋㅋ 1 ㅇㅇ 112.146 2019-03-19 0
133350 일반 도와줘 moondo8077 2019-03-19 0
133349 일반 차렷충 차별갤러리 ㅅㅂ 4 momono 2019-03-19 0
133348 일반 백댄서를 옆에두면안되는 이유 애룽 2019-03-19 0
133347 일반 루아 표정 세팅했는데 왜 안먹힐까? 6 GEORGIA 2019-03-19 0
133346 일반 겜화면 모니터에 안뜨게 하는법좀 ㅇㅇ 223.38 2019-03-19 0
133345 일반 딱한새끼만 h방 와바라 6 momono 2019-03-19 0
133344 일반 MMD 룸에서 자기 캐릭터 춤추게하는건 어캐함? ㅇㅇ 39.7 2019-03-19 0
념글 삭제글 갤러리 랭킹