"Unity-spatial 기초"의 두 판 사이의 차이
(→퀘스트) |
|||
(같은 사용자의 중간 판 12개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
+ | * 왜인지 active가 안될때 : setting (톱니바퀴) - issues - check for issues 의 refresh 클릭하면 이유 알려줌! | ||
+ | |||
+ | * 유니티 공식 매뉴얼: https://docs.unity3d.com/Manual/webgl-templates.html | ||
+ | * 영상 하나로 툴키트 모두 살펴보기 : https://www.youtube.com/watch?v=6vSB1olBau8 | ||
+ | |||
+ | * 자막 없고 어느나라 말인지 모르겠찌만, 뭔가 많은(trigger로 자동문 등) : https://www.youtube.com/playlist?list=PLs7ibWRUM5eFTQT2L5_Cy4sNNYHKOT8yS | ||
+ | * 스페이셜 유니티 전문으로 하는 듯(일본어): https://www.youtube.com/@my_gardenbee | ||
+ | |||
+ | * vs코드 관련: https://www.youtube.com/watch?v=-TfdTMIDna8 | ||
+ | |||
== 유니티 시작하고 맛보기 == | == 유니티 시작하고 맛보기 == | ||
* 다운로드부터 업로드까지 | * 다운로드부터 업로드까지 | ||
4번째 줄: | 14번째 줄: | ||
* test active scene 시 무슨 파일이 없다고 하는데, 해당 경로 들어가서 <spatial-island_defaut_0>이 적힌 파일을 해당 파일명으로 변경해주면 됨! | * test active scene 시 무슨 파일이 없다고 하는데, 해당 경로 들어가서 <spatial-island_defaut_0>이 적힌 파일을 해당 파일명으로 변경해주면 됨! | ||
** test 한 scene은 남에게는 공유할 수 없는 비공개 샌드박스에 저장됨! | ** test 한 scene은 남에게는 공유할 수 없는 비공개 샌드박스에 저장됨! | ||
+ | |||
+ | === 공간 vs 공간 템플릿 === | ||
+ | * 공간: 공간 패키지 자산(배지)에 연결됨! creator tool kit 공간은 무조건 공간. | ||
+ | * 공간 템플릿: 재사용 가능한 환경 장면. creator tool kit에서 템플릿을 선택하면 새로운 공간으로 만들어짐~ | ||
== 텔레포트 == | == 텔레포트 == | ||
− | * 공식: https://docs.spatial.io/avatar-teleporter | + | * 공식 문서: https://docs.spatial.io/avatar-teleporter |
** 별거 없음 | ** 별거 없음 | ||
* Collider가 활성화된 GameObject에 배치해야 함. -> Is Trigger 체크 | * Collider가 활성화된 GameObject에 배치해야 함. -> Is Trigger 체크 | ||
16번째 줄: | 30번째 줄: | ||
== point of Interest == | == point of Interest == | ||
* i 표시의 마커 표시 -> 다가가면 제목과 설명 나옴! | * i 표시의 마커 표시 -> 다가가면 제목과 설명 나옴! | ||
− | * 공식: https://docs.spatial.io/components/point-of-interest | + | * 공식 문서: https://docs.spatial.io/components/point-of-interest |
+ | * 더 잘하려면 vs스크립팅 : https://docs.spatial.io/visual-scripting-examples/point-of-interest-vs | ||
+ | |||
+ | == 트리거 == | ||
+ | * 공식 영상: https://www.youtube.com/watch?v=E8zE52pIVzQ&t=32s | ||
+ | * 공식 문서(심화로 읽어보아야 함!): https://docs.spatial.io/components/trigger-event | ||
+ | * 트리거 vs: https://docs.spatial.io/visual-scripting-examples/trigger-event-vs | ||
+ | |||
+ | * object 만들기 먼저 : hierachy 우클릭 - 3d object - cube 선택 | ||
+ | ** 만일 큐브가 안보이고 싶으면, inspector에서 Mesh를 none 선택! | ||
+ | ** 초록색 실선의 구모양이 트리거 존이므로 크거나 작게 조절 | ||
+ | * inspector 창의 enter event : 해당 영역에 들어갈때 이벤트 | ||
+ | ** exit event는 해당 영역에서 나갈 때 이벤트 | ||
+ | * unity event is synced: 해당 사람만 보고 듣는지(체크 안하면) / 아니면 해당 공간의 모든 사람이 듣는 지(체크 하면) | ||
+ | * animator event : 장면의 연결된 애니메니터가 있는 경우 공간으로 이동하거나 애니메이션된 개체에 연결된 애니메이션이 재생 | ||
+ | * quest event : 공간 퀘스트로 공간을 통해 사용자와 탐험가를 안내하고 특정 작업을 수행하거나 공간에서 특정 작업을 통해 진행상황을 얻을 수 있음 | ||
+ | ** 해당 목차 참조 | ||
+ | |||
+ | === 트리거 만들기 === | ||
+ | * 큐브의 inspector에서 is Trigger 선택 - add component 클릭 - trigger 검색하여 spatial trigger event 선택 | ||
+ | * 혹은 Hierachy 창에서 우클릭 - spatial - trigger event | ||
+ | |||
+ | * unity Event : + 눌러서 목차 만든 후에, 관련된 object를 inspector에 드래그앤드랍 - 기능선택 - 관련 작업 | ||
+ | ** 색상변경: mesh randerer - material material : 색상 변경(재료의 메시를 변경)시 선택 - 변경할 색상을 none에 드래그앤드랍 | ||
+ | ** 오디오 재생: Hierachy 에서 해당 오디오 파일을 우클릭 - audio - audio source 선택 - 오디오파일을 trigger 칸에 드래그앤드랍 - audio play 선택 | ||
+ | *** 해당 존을 벗어나면 오디오도 중지되어야 하므로 exit event도 설정해야 함 : 오디오파일 드래그앤드랍 - audio source - stop | ||
+ | |||
+ | |||
+ | == 퀘스트 == | ||
+ | * 공식 영상: https://www.youtube.com/watch?v=21OUsBrLMS8 | ||
+ | ** https://www.youtube.com/watch?v=NM1TFr69yf0 | ||
+ | * 공식 문서(좀더 심화): https://docs.spatial.io/quests | ||
+ | |||
+ | * Hierachy 에서 우클릭하여 spatial - quest 선택 | ||
+ | ** inspector 에서 quest name 설정과 description 설정(메타버스 화면에서 왼쪽 하단에 설명 뜨는 것!) | ||
+ | ** start automatically: 자동으로 퀘스트 시작 (trigger를 통해서도 시작할 수 있음!) | ||
+ | ** save user progress: 사용자별 진행상황 저장 | ||
+ | ** tasks are ordered: task가 순서를 갖도록 하는 것 | ||
+ | ** celebrate on on complete: 완료 축하(색종이 조각 애니메이션 진행) | ||
+ | |||
+ | === quest rewards === | ||
+ | * 배지 혹은 아이템 선택 | ||
+ | * badge: [https://www.spatial.io/studio/worlds spatial 스튜디오]에서 만들면 됨 | ||
+ | ** 배지 공식문서(영상은 배지 문서 만들어지기 전): https://docs.spatial.io/quests/badges | ||
+ | ** 배지 사이즈: 1024 x 1024 png인 원 모양, 1mb 최대. | ||
+ | ** 배지는 Spatial Portal 에서 만들면 된다고 하는데.. 없다. | ||
+ | ** project 에서 import new asset - 배지 파일 선택 - inspector에서 alpha source가 input texture alpha로 되어있는지 확인 - alpha is transparency 선택 - apply 클릭 - 다시 톱니바퀴(setting)에서 badge 클릭하여 select icon - create new badge | ||
+ | * item : | ||
+ | |||
+ | |||
+ | |||
+ | === tasks === | ||
+ | * 퀘스트를 완료하기 위한 작업들 | ||
+ | |||
+ | * list를 먼저 만듦 - name 붙임 | ||
+ | * type 선택 | ||
+ | ** check : 행동을 하면 체크가 됨 | ||
+ | *** 아래의 complete task와 매치되는 것 | ||
+ | ** progress bar: 코인 수집 같은 진행율을 나타낼때 | ||
+ | *** 아래의 add task progress와 매치되는 것 | ||
+ | |||
+ | * task markers : 퀘스트 수행을 위해 화면에 마커를 남기는 기능 | ||
+ | |||
+ | * 퀘스트에 해당하는 아이템을 묶어주기 | ||
+ | ** trigger event 만들기 - quest 에서 해야하는 것들 앞에 놓기 - on enter event에서 quest event 설정 - quest 이름 설정 - complete task - 세부 task 이름 설정 | ||
+ | ** trigger event가 이미 있는 것은 quest event만 설정하면 됨! | ||
+ | *** prefab(파란색으로 표시되는)인 경우에는 >키를 누르면 해당하면 모든 prefab에 적용됨!!!! | ||
+ | |||
+ | == 샘플 == | ||
+ | * 공간 공식: https://docs.spatial.io/samples | ||
+ | * 비쥬얼 스크립팅 공식: https://docs.spatial.io/visual-scripting-examples | ||
+ | |||
+ | |||
+ | |||
+ | == 그 외 == | ||
+ | |||
+ | === 썸네일 === | ||
+ | * https://www.youtube.com/watch?v=VsOrRh8gtaI | ||
+ | * 사이즈: 1280 X 720(16:9), 1MB 이하, png 혹은 jpg | ||
+ | |||
+ | === 운전 가능한 차량 === | ||
+ | * https://docs.spatial.io/custom-vehicles | ||
+ | |||
+ | === 하버보드 === | ||
+ | * 하버보드 만드는 것이나 많은 것을 포함하므로 추천: https://www.youtube.com/watch?v=GhMZglNVqos | ||
+ | |||
+ | === 오디오(AFTER EFFECT 통해서 비디오로 변환) === | ||
+ | * https://www.youtube.com/watch?v=Nnp2KPvBTzg | ||
+ | ** FILMING MODE를 통해서 지면 아래의 물품 가져오기 | ||
+ | * PORTAL을 엄청 크게 해서 구체가 아닌 안은 모양으로 놔두면 좀더 팬시함(12:52) | ||
+ | |||
+ | == 용어 == | ||
+ | * 공간(space): 여러 사용자가 참여하는 가상공간(메타버스) | ||
+ | * 세계: '''동일한 경제'''를 공유하는 생태계 또는 공간 모음. 하나의 세계에 속할 경우 공간1의 항목을 공간2에서 사용할 수 있음. | ||
+ | * 패키지: unity를 사용하여 만든 시각적 자산 | ||
+ | ** 공간: unity를 통해 게시한 spatial 공간 | ||
+ | ** space template: unity에서 생성된 장면. 공간 템플릿으로 게시되면 공간이 바로 생성되지는 않고, 템플릿으로 공간을 만들 수 있음 | ||
+ | ** avatar: 맞춤형 아바타 자산 | ||
+ | ** avatar animation: 아바타가 재생할 수 있는 사용자 지정 애니메이션(댄스 감정 표현 등) | ||
+ | ** 조립식 개체: 무엇이든 가능. 운전 가능한 차량 또는 대화형 개체와 같은 다른 유형의 개체도 포함 | ||
+ | |||
+ | === 경제 === | ||
+ | * 공식문서: https://docs.spatial.io/economy | ||
+ | |||
+ | * 경제: 사용자가 공간 내에서 얻고, 벌고, 구매할 수 있는 통화. | ||
+ | ** 항목: 플랫폼에서 사용자에게 배포할 수 있는 항목 | ||
+ | ** 항목 유형: 대부분 패키지 유형에 매핑되지만, 통화 같은 일부 항목은 패키지에 연결되지 않음 | ||
+ | *** 화신 | ||
+ | *** emote: 사용자 반응패널에 표시되는 아바타 애니메이션 | ||
+ | *** 조립식 개체 | ||
+ | *** 아바타 첨부 | ||
+ | *** 통화: 나의 세계에 해당하는 토큰. 스크립팅을 통해 사용자에게 부여 가능 | ||
+ | *** 기본: 물리적 표현이 없는 항목. 공간에서 일부 콘텐츠를 트리거하거나 잠금 해제하는데 간단히 사용 | ||
+ | ** 품목 범위: 품목을 사용하거나 소비할 수 있는 곳 | ||
+ | *** 범용범위: spatial의 모든 공간에서 사용. | ||
+ | *** 월드범위: 동일한 월드 내 이용 | ||
+ | * 배낭: 사용자의 인벤토리 | ||
+ | * 상점: 출시예쩡으로 공간 내 사용자가 구매할 수 있는 아이템 상점. | ||
+ | |||
+ | |||
+ | == 유니티 사용 == | ||
+ | === glb 이용 === | ||
+ | * unity는 원래 glb를 지원하지 않음: https://zenn.dev/eightbeat/articles/8530fc7c833ba1 참고하여 플러그인 설치 | ||
+ | ** 이거 해도 색 안먹히고 모양도 뭉개짐 ㅠ 블렌더로 fbx로 변경해서 넣는게 모양이라도 보여서 좋을듯~ | ||
+ | |||
+ | === fbx 이용 === | ||
+ | * 색이 빠지므로 material 값을 설정해주어야 함 | ||
+ | * 3D를 누른 후, inspector 창에서 materials 선택 = extract materials 선택 - material 폴더 따로 만들어줌 | ||
+ | * 다시 3D 선택하여 material 칸의 ▽ 클릭 - surface inputs 에 base map 연결() | ||
+ | * 요 영상 참고: https://www.youtube.com/watch?v=42BupM0ERS8 | ||
[[분류:유니티]] | [[분류:유니티]] |
2023년 7월 30일 (일) 18:33 기준 최신판
- 왜인지 active가 안될때 : setting (톱니바퀴) - issues - check for issues 의 refresh 클릭하면 이유 알려줌!
- 유니티 공식 매뉴얼: https://docs.unity3d.com/Manual/webgl-templates.html
- 영상 하나로 툴키트 모두 살펴보기 : https://www.youtube.com/watch?v=6vSB1olBau8
- 자막 없고 어느나라 말인지 모르겠찌만, 뭔가 많은(trigger로 자동문 등) : https://www.youtube.com/playlist?list=PLs7ibWRUM5eFTQT2L5_Cy4sNNYHKOT8yS
- 스페이셜 유니티 전문으로 하는 듯(일본어): https://www.youtube.com/@my_gardenbee
목차
유니티 시작하고 맛보기
- 다운로드부터 업로드까지
- test active scene 시 무슨 파일이 없다고 하는데, 해당 경로 들어가서 <spatial-island_defaut_0>이 적힌 파일을 해당 파일명으로 변경해주면 됨!
- test 한 scene은 남에게는 공유할 수 없는 비공개 샌드박스에 저장됨!
공간 vs 공간 템플릿
- 공간: 공간 패키지 자산(배지)에 연결됨! creator tool kit 공간은 무조건 공간.
- 공간 템플릿: 재사용 가능한 환경 장면. creator tool kit에서 템플릿을 선택하면 새로운 공간으로 만들어짐~
텔레포트
- 공식 문서: https://docs.spatial.io/avatar-teleporter
- 별거 없음
- Collider가 활성화된 GameObject에 배치해야 함. -> Is Trigger 체크
- parent가 될 수 있으며, 애니메이션화도 가능
- Hierachy 창에서 Avatar teleporter - 위치 및 크기 조정 - target 위치 조정
- target을 기존 object위치로 할 것이라면, Teleporter object 에서 target location 을 변경해주면 됨!
- Hierachy 창에서 Avatar teleporter - 위치 및 크기 조정 - target 위치 조정
point of Interest
- i 표시의 마커 표시 -> 다가가면 제목과 설명 나옴!
- 공식 문서: https://docs.spatial.io/components/point-of-interest
- 더 잘하려면 vs스크립팅 : https://docs.spatial.io/visual-scripting-examples/point-of-interest-vs
트리거
- 공식 영상: https://www.youtube.com/watch?v=E8zE52pIVzQ&t=32s
- 공식 문서(심화로 읽어보아야 함!): https://docs.spatial.io/components/trigger-event
- 트리거 vs: https://docs.spatial.io/visual-scripting-examples/trigger-event-vs
- object 만들기 먼저 : hierachy 우클릭 - 3d object - cube 선택
- 만일 큐브가 안보이고 싶으면, inspector에서 Mesh를 none 선택!
- 초록색 실선의 구모양이 트리거 존이므로 크거나 작게 조절
- inspector 창의 enter event : 해당 영역에 들어갈때 이벤트
- exit event는 해당 영역에서 나갈 때 이벤트
- unity event is synced: 해당 사람만 보고 듣는지(체크 안하면) / 아니면 해당 공간의 모든 사람이 듣는 지(체크 하면)
- animator event : 장면의 연결된 애니메니터가 있는 경우 공간으로 이동하거나 애니메이션된 개체에 연결된 애니메이션이 재생
- quest event : 공간 퀘스트로 공간을 통해 사용자와 탐험가를 안내하고 특정 작업을 수행하거나 공간에서 특정 작업을 통해 진행상황을 얻을 수 있음
- 해당 목차 참조
트리거 만들기
- 큐브의 inspector에서 is Trigger 선택 - add component 클릭 - trigger 검색하여 spatial trigger event 선택
- 혹은 Hierachy 창에서 우클릭 - spatial - trigger event
- unity Event : + 눌러서 목차 만든 후에, 관련된 object를 inspector에 드래그앤드랍 - 기능선택 - 관련 작업
- 색상변경: mesh randerer - material material : 색상 변경(재료의 메시를 변경)시 선택 - 변경할 색상을 none에 드래그앤드랍
- 오디오 재생: Hierachy 에서 해당 오디오 파일을 우클릭 - audio - audio source 선택 - 오디오파일을 trigger 칸에 드래그앤드랍 - audio play 선택
- 해당 존을 벗어나면 오디오도 중지되어야 하므로 exit event도 설정해야 함 : 오디오파일 드래그앤드랍 - audio source - stop
퀘스트
- 공식 영상: https://www.youtube.com/watch?v=21OUsBrLMS8
- 공식 문서(좀더 심화): https://docs.spatial.io/quests
- Hierachy 에서 우클릭하여 spatial - quest 선택
- inspector 에서 quest name 설정과 description 설정(메타버스 화면에서 왼쪽 하단에 설명 뜨는 것!)
- start automatically: 자동으로 퀘스트 시작 (trigger를 통해서도 시작할 수 있음!)
- save user progress: 사용자별 진행상황 저장
- tasks are ordered: task가 순서를 갖도록 하는 것
- celebrate on on complete: 완료 축하(색종이 조각 애니메이션 진행)
quest rewards
- 배지 혹은 아이템 선택
- badge: spatial 스튜디오에서 만들면 됨
- 배지 공식문서(영상은 배지 문서 만들어지기 전): https://docs.spatial.io/quests/badges
- 배지 사이즈: 1024 x 1024 png인 원 모양, 1mb 최대.
- 배지는 Spatial Portal 에서 만들면 된다고 하는데.. 없다.
- project 에서 import new asset - 배지 파일 선택 - inspector에서 alpha source가 input texture alpha로 되어있는지 확인 - alpha is transparency 선택 - apply 클릭 - 다시 톱니바퀴(setting)에서 badge 클릭하여 select icon - create new badge
- item :
tasks
- 퀘스트를 완료하기 위한 작업들
- list를 먼저 만듦 - name 붙임
- type 선택
- check : 행동을 하면 체크가 됨
- 아래의 complete task와 매치되는 것
- progress bar: 코인 수집 같은 진행율을 나타낼때
- 아래의 add task progress와 매치되는 것
- check : 행동을 하면 체크가 됨
- task markers : 퀘스트 수행을 위해 화면에 마커를 남기는 기능
- 퀘스트에 해당하는 아이템을 묶어주기
- trigger event 만들기 - quest 에서 해야하는 것들 앞에 놓기 - on enter event에서 quest event 설정 - quest 이름 설정 - complete task - 세부 task 이름 설정
- trigger event가 이미 있는 것은 quest event만 설정하면 됨!
- prefab(파란색으로 표시되는)인 경우에는 >키를 누르면 해당하면 모든 prefab에 적용됨!!!!
샘플
- 공간 공식: https://docs.spatial.io/samples
- 비쥬얼 스크립팅 공식: https://docs.spatial.io/visual-scripting-examples
그 외
썸네일
- https://www.youtube.com/watch?v=VsOrRh8gtaI
- 사이즈: 1280 X 720(16:9), 1MB 이하, png 혹은 jpg
운전 가능한 차량
하버보드
- 하버보드 만드는 것이나 많은 것을 포함하므로 추천: https://www.youtube.com/watch?v=GhMZglNVqos
오디오(AFTER EFFECT 통해서 비디오로 변환)
- https://www.youtube.com/watch?v=Nnp2KPvBTzg
- FILMING MODE를 통해서 지면 아래의 물품 가져오기
- PORTAL을 엄청 크게 해서 구체가 아닌 안은 모양으로 놔두면 좀더 팬시함(12:52)
용어
- 공간(space): 여러 사용자가 참여하는 가상공간(메타버스)
- 세계: 동일한 경제를 공유하는 생태계 또는 공간 모음. 하나의 세계에 속할 경우 공간1의 항목을 공간2에서 사용할 수 있음.
- 패키지: unity를 사용하여 만든 시각적 자산
- 공간: unity를 통해 게시한 spatial 공간
- space template: unity에서 생성된 장면. 공간 템플릿으로 게시되면 공간이 바로 생성되지는 않고, 템플릿으로 공간을 만들 수 있음
- avatar: 맞춤형 아바타 자산
- avatar animation: 아바타가 재생할 수 있는 사용자 지정 애니메이션(댄스 감정 표현 등)
- 조립식 개체: 무엇이든 가능. 운전 가능한 차량 또는 대화형 개체와 같은 다른 유형의 개체도 포함
경제
- 경제: 사용자가 공간 내에서 얻고, 벌고, 구매할 수 있는 통화.
- 항목: 플랫폼에서 사용자에게 배포할 수 있는 항목
- 항목 유형: 대부분 패키지 유형에 매핑되지만, 통화 같은 일부 항목은 패키지에 연결되지 않음
- 화신
- emote: 사용자 반응패널에 표시되는 아바타 애니메이션
- 조립식 개체
- 아바타 첨부
- 통화: 나의 세계에 해당하는 토큰. 스크립팅을 통해 사용자에게 부여 가능
- 기본: 물리적 표현이 없는 항목. 공간에서 일부 콘텐츠를 트리거하거나 잠금 해제하는데 간단히 사용
- 품목 범위: 품목을 사용하거나 소비할 수 있는 곳
- 범용범위: spatial의 모든 공간에서 사용.
- 월드범위: 동일한 월드 내 이용
- 배낭: 사용자의 인벤토리
- 상점: 출시예쩡으로 공간 내 사용자가 구매할 수 있는 아이템 상점.
유니티 사용
glb 이용
- unity는 원래 glb를 지원하지 않음: https://zenn.dev/eightbeat/articles/8530fc7c833ba1 참고하여 플러그인 설치
- 이거 해도 색 안먹히고 모양도 뭉개짐 ㅠ 블렌더로 fbx로 변경해서 넣는게 모양이라도 보여서 좋을듯~
fbx 이용
- 색이 빠지므로 material 값을 설정해주어야 함
- 3D를 누른 후, inspector 창에서 materials 선택 = extract materials 선택 - material 폴더 따로 만들어줌
- 다시 3D 선택하여 material 칸의 ▽ 클릭 - surface inputs 에 base map 연결()