728x90
728x90
VR 환경에서 움직일 때 Text나 Image가 시선 방향에 계속 따라다니게 하는 세팅(HUD)을 설정해보려고 한다.일반적으로 UI에서 Image나 button을 생성하면 게임뷰 상에서는 보이지만 막상 오큘러스로 실행해서 보면 나타나지 않는 것을 확인할 수 있다. 이를 해결하기 위해서는 Canvas의 Render Mode를 World Space로 변경해 주어야 한다. 그리고 Canvas의 Position을 조정하고 Scale을 0.01/0.01/0.01로 극단적으로 작게 만들어 게임 뷰 위에 올려놓았다. (일반적으로 UI를 생성하면 씬에서 크게 확대되어 나타나지만 최대한 작게 만들어 일반적인 오브젝트처럼 보이게 만듦) 마지막으로 제작한 Canvas를 OVRCameraRig의 CenterEyeAnchor에..
애니메이터를 사용하여 Fade in/out 기법을 구현해보려고 한다. 먼저 애니메이터를 적용할 오브젝트(이미지)에 Animation을 생성해주고 Create - Image - Color를 Add Property해준다. 화면이 투명한 상태에서 애니메이션이 1초 간 적용된다고 가정했을 때, Fade in은 Color.a 알파값을 1에서 0으로 설정하고 Fadeout은 알파값을 0에서 1로 설정한다. 생성된 Animation Clip에 Loop Time 체크를 해제해 주었다.(한 번만 구현,반복 없게 하기 위해) Animator Controller에서 다음과 같이 Fade in과 Fade out을 Make Transition해준다. 그리고 Parameter에 Bool 타입 변수를 생성해주고 Fadeflg라고 ..
Fade In & Fade Out 연출효과 영화 연출효과 중 하나인 Fade in/out 효과를 구현해보려고 한다. - Fade in : 광량을 점차 늘려 화면이 나타나게 하는 기법 - Fade out : 광량을 점차 줄요 화면이 사라지게 하는 기법 - Desolve : Fade out 하면서 화면이 사라지는 동시에 Fade in하는 화면이 나타나게 하는 기법 기본적인 세팅은 UI - Image 생성 후 AnchorPresets을 Stretch/Stretch로 바꾼 후 Color을 black로 설정해 주었다. 유니티 환경에서 FI/FO 코드 구현하기 using System.Collections; using System.Collections.Generic; using UnityEngine; using Un..
메타 퀘스트 2 컨트롤러 입력값 세팅 및 이동 메타 퀘스트 2 입력과 관련된 정보를 확인할 수 있는 사이트이다. 필요한 함수들도 있으니 사용할 때 참고하면 되겠다. https://docs.unity3d.com/kr/2019.2/Manual/OculusControllers.html 오큘러스 입력 - Unity 매뉴얼 오큘러스 리프트(Oculus Rift)에는 세 개의 입력이 있습니다. 오큘러스 터치 컨트롤러 두 개와 오큘러스 리모트 한 개가 바로 그것입니다. Unity 에디터의 네이티브 오큘러스 리프트 입력 하드웨어 docs.unity3d.com https://developer.oculus.com/documentation/unity/unity-ovrinput/ Map Controllers | Oculus ..
Input.GetAxis()와 Translate()를 사용한 이동 using System.Collections; using System.Collections.Generic; using UnityEngine; public class move : MonoBehaviour { void Update() { float mH = Input.GetAxis("Horizontal"); float mV = Input.GetAxis("Vertical"); Vector3 mov = new Vector3(mH*Time.deltaTime, 0f, mV*Time.deltaTime); transform.Translate(mov); } } CharacterController와 Move()를 사용한 이동 using System.Coll..
카메라 이동 애니메이션 구현 씬 상에 가상의 위치값을 정해놓은 후 오브젝트가 해당 값으로 이동하면서 카메라가 따라가는 애니메이션을 구현했다. Create Empty(positions)를 생성 후 자식 Create Empty(pos1 ~ pos8)까지 생성해주었다. 그리고 각각의 pos 오브젝트의 인스펙터 창에서 cube 모양을 클릭 후 가상의 초록색 점을 매핑해주었다. 이는 씬 상에서만 보이지 플레이하면 보이지 않는다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class movPath : MonoBehaviour { public bool bDebug = true; public float Rad..