전체 글 63

레스큥 개발일지 2일차

멍하! 사실은 며칠전에 적으려고 했는데 진짜 뜬금없게 인터넷이 나가서ㅠㅠ 드디어 적는 레스큥 개발 2일차! 저번에 텔포를 만들고 돌아오겠다고 했는데 텔포+손 까지 만들어서 돌아왔다! 텔포는 간단하게 LoadScene으로 구현했고 https://meongjeong.tistory.com/10 [UNITY] SceneManager.LoadScene 씬 변경하기 유니티에서 작업하다보면 씬을 변경하는 일이 종종 생긴다. 스테이지를 넘어가거나 메인 스테이지에서 인게임으로 들어가거나 그럴 때 사용하는게 SceneManager.LoadScene 이다. using UnityEngine.SceneManag meongjeong.tistory.com VR 환경에서 버튼 선택도 전에 해봐서 스무스하게 성공했다! (아마도..) ..

레스큥 2022.04.14

[UNITY] Unity Button UI OnClick 사용하기

정말정말 간단하지만 모르면 정말정말 돌아가는 바로 그 UI의 OnClick! 이전 프로젝트에서.. 전부 충돌에 의한 상호작용으로 만들었는데.. 얼마나 바보 같았을까.... 거두절미하고 버튼의 온클릭은 아주아주 간단하다! On Click()에서 +를 누르고 None에 실행하고자 하는 스크립트가 들어있는 오브젝트를 끌어서 넣는다! No Function을 클릭해서 원하는 스크립트 속의 함수를 연결하면 끝! 버튼이 눌리면 Canvas에 있는 ScenesChange의 ScenesChange() 함수가 실행된당! 해당 함수의 자세한 내용은 여기에! https://meongjeong.tistory.com/10?category=995031 [UNITY] SceneManager.LoadScene 씬 변경하기 유니티에서 ..

UNITY 2022.04.14

[UNITY] XR Origin / xr interaction toolkit에서 UI 상호작용 하기

xr interaction toolkit은 기본적으로 상호작용 할 수 있는 빨간 선(?)을 제공한다. 하지만 UI와의 상호작용은 할 수 없다. 우선 VR에서 UI는 Screen Space - Overlay로는 상호작용이 불가능하기 때문에 world space로 변경해준다. world space로 변경 했으면 카메라에 잘 보이게 크기를 조정한다. 그 후에 Canvas에 Tracked Device Graphic Raycaster 스크립트를 추가하면 된다. 스크립트를 추가하면 아래 영상처럼 버튼에 닿았을 때 빨간색이 흰색이 되고 트리거 버튼을 통해 클릭할 수 있다. 씬변경 스크립트가 적용되어 버튼 클릭 시 씬이 바뀐다 씬 변경 스크립트 https://meongjeong.tistory.com/10 [UNITY]..

UNITY 2022.04.14

[UNITY] HandController 오큘러스에서 움직이는 손 만들기

학기 중에 하던 프로젝트에서 하고싶었지만 결국 실패했던 움직이는 손 만들기!! 나와 같은 고민을 하고 계신 외국 블로거(? 님의 도움으로 해결했다 ㅠㅠ 지금 사용하고 있는 xr interaction toolkit은 왜인지 손 오브젝트를 지원해주지 않는다ㅠㅠ 그래서 전부터 오큘러스 에셋에 있는 손을 탐내고 있었다. 이 블로거 분도 나와 같이 오큘러스에 있는 에셋을 사용해서 손을 구현했다. 블로그 본문은 요기 https://medium.com/datastuffplus/using-oculus-integration-hand-animations-with-unity-xr-kit-e707b6acb0a2 Using Oculus Integration Hand Animations with Unity XR Kit Step ..

UNITY 2022.04.14

[UNITY] SceneManager.LoadScene 씬 변경하기

유니티에서 작업하다보면 씬을 변경하는 일이 종종 생긴다. 스테이지를 넘어가거나 메인 스테이지에서 인게임으로 들어가거나 그럴 때 사용하는게 SceneManager.LoadScene 이다. using UnityEngine.SceneManagement; public void SceneChange() { SceneManager.LoadScene("SceneName"); } 위 코드는 SceneChange() 함수를 실행하면 SceneName의 이름을 갖고 있는 씬으로 변경된다. 그리고 씬을 변경을 하기 위해서 미리 씬을 등록해야한다. Build Settings에서 Add Open Scenes를 통해 씬을 추가하거나 씬을 끌어서 추가할 수 있다. 이때 오른쪽에 있는 씬 넘버로도 이동이 가능하다. (하지만 편집하면..

UNITY 2022.04.10

레스큥 개발일지 1일차

1일차라고 하기엔 시작한지 한 달이 넘었지만.. 어쨋든 블로그에 첫 기록! 우선 지금까지는 전체적인 아이디어 구상 + 맵 제작 까지 했다. 우리 서녕씌가 디자인 해준 NPC칭구들,.. 무려 엠비티아이까지 있는 칭구라구요,,~~ 더 있지만,,안돼안돼 비밀이야 완성까지는 그리고 열심히 뚝딱거린 맵들... 아니 뭐.. 맵을 처음부터 만들기엔..난 디자이너가 아니니까...! 열심히 에셋스토어 뒤져서 만들었는데 생각보다 그럴싸해서 만족쓰..^_^ 물론 아직 오큘러스를 안사서.. (돈이 없어) 오큘러스 사고 사이즈 같은 것도 봐야겠지만 퀘스트 3? 퀘스트2 프로? 언제 나옵니까 어서 나오라구요. 뭐 어쨋든 이 외에도 맵이 몇개 더 있고.. 이번 달 부터 상호작용을 만들건데 (사실 코드를 오늘 처음 짜서 블로그를....

레스큥 2022.04.04

[UNITY] Animation / Animator Controller 애니메이션 사용하기

우선 첫번째 (당연하겠지만) Animation과 Animator Controller는 다르다 직관적으로 보면 Animation은 내가 원하는 움직임을 담고 있고 Animator Controller는 Animation들을 관리한다고 볼 수 있다. ex) 걷는 움직임 Animation / 걷고 뛰는 Animation을 모아놓은 Animator Controller Window - Animation - Animation을 통해 애니메이션 창을 열 수 있다. 창을 통해서 애니메이션을 조절할 수 있다. Window - Animation - Animator를 통해 애니메이터 창을 열 수 있다. - 기본적으로 Entry부터 실행되고 Entry에 직접적으로 연결된 State(네모박스)는 주황색으로 표시된다. State는..

UNITY 2022.04.04

[UNITY] Find / FindWithTag | 오브젝트 찾기

필요한 오브젝트 찾기! 이름으로도 찾을 수 있고 태그로도 찾을 수 있다. GameObject name_, tag_; name_ = gameObject.Find("name"); //name_에 name 이라는 이름을 갖고 있는 오브젝트 정보 넣어주기 tag_ = gameObject.FindWithTag("tag"); //tag_에 tag 라는 태그를 갖고 있는 오브젝트 정보 넣어주기 ※간단한건 태그 쓰는 것 보단 그냥 public 변수 만들어서 쓰는게 좋다고 하셨당. 아무래도 오브젝트가 많아지면 오브젝트를 전부 뒤져서 찾아내야하니까! https://docs.unity3d.com/kr/530/ScriptReference/GameObject.FindWithTag.html

UNITY 2022.01.10

[UNITY] RigidbodyConstraints | Rigidbody 움직임 제한하기

저번 글에서 움직임을 제어하기 위해 Rigidbody의 gravity와 kinematic에 접근하는 방법에 대해 알아봤다. https://meongjeong.tistory.com/5 [UNITY] Rigidbody - useGravity, isKinematic 접근하기 GameObject의 물리 엔진을 동작하게 하는 Rigidbody!! 그 중에서 개인적으로 가장 자주 사용하는건 Use Gravity이다. (Is Kinematic은 그냥 같이..) 유니티 매뉴얼을 보면 Use Gravity 활성화되면 오브젝트는 중.. meongjeong.tistory.com 이번에는 Constraints에 접근하여 움직임에 제한을 줘보자. None 모든 축에 대해서 회전과 움직임을 제한하지 않습니다. FreezePosi..

UNITY 2022.01.09

[UNITY] Rigidbody - useGravity, isKinematic 접근하기

GameObject의 물리 엔진을 동작하게 하는 Rigidbody!! 그 중에서 개인적으로 가장 자주 사용하는건 Use Gravity이다. (Is Kinematic은 그냥 같이..) 유니티 매뉴얼을 보면 Use Gravity 활성화되면 오브젝트는 중력의 영향을 받습니다. Is Kinematic 활성화되면 오브젝트는 물리 엔진으로 제어되지 않고 오로지 Transform 으로만 조작됩니다. 플랫폼을 옮기는 경우나 HingeJoint 가 추가된 리지드바디를 애니메이션화하는 경우에 유용합니다. 이런식으로 설명이 나와있는데 나는 '일정 상황에서 오브젝트의 이동을 멈출 때(고정할 때)' 두 옵션을 사용했다. 인게임에서 상호작용 하려면 일정 조건에서 Use Gravity랑 Is Kinematic에 접근해야한다. Ri..

UNITY 2022.01.08