VR 콘텐츠 제작 26

디스크 골프 [#21] - URP프로젝트로 전환하기

프로젝트의 외적인 퀄리티를 높이기 위해서 URP파이프라인을 사용해보기로 했다. URP는 Universal Render Pipeline의 약자로 공식문서에 따르면 라고 한다. 기존프로젝트에서 URP로 전환하면 문제가 생겼을때 복구가 어려울수도 있기 때문에 새프로젝트에 기존프로젝트를 옮겨서 URP로 전환할 생각이다. 기존프로젝트의 에셋을 Export해서 새 프로젝트로 이식 해보자. 기존 프로젝트의 에셋이 유니티 패키지 파일로 받아 졌다. 새 3D URP 프로젝트를 파자. 그리고 다운받은 유니티패키지파일을 새 프로젝트에 임포트해주었다. 임포트된 파일을 까봤는데 메테리얼이 분홍색으로 변해 있었다.. 전에 이것에 대한 대처를 에셋을 구매한 사이트에서 확인했기 때문에 따라서 해보자. 대충 Built-in 프로젝트를..

VR 콘텐츠 제작 2024.01.04

디스크 골프 [#20] - 맵 새로 만들고 최적화하기

원래 맵을 터레인을 사용해서 만들었었는데 터레인을 사용하니 vr기기로 앱을 돌릴때 렉이 너무 많이 걸린다는 것을 깨달았다. 터레인은 메시자체가 무겁기도하고 아무래도 이번에 제작한 맵의 크기가 크다보니 기기가 감당할 정도의 성능으로 돌리기가 어려웠다. 결국 터레인의 해상도를 줄이고 최적화를 해서 프레임을 올렸지만 해상도를 낮추다보니 터레인의 퀄리티가 매우 안좋아졌다. 그래서 생각한게 터레인이 무거운 이유는 맵을 만들면서 터레인의 버텍스 수가 많아지기 때문인데 터레인을 평지로 맞추고, 원래 산맥이 있던 자리를 돌 프리펩으로 대체해서 사용하는 방법이다. 그래서 일단 만들어 놓은 터레인을 만일을 대비해 복사한 다음, Flatten 버튼을 눌러서 기존에 있던 터레인을 평지로 만들어주었다. 그리고 지금 사용하는 에..

VR 콘텐츠 제작 2023.12.29

디스크 골프 [#19] - 시네마틱 도입부 만들기2

저번에 Mountain맵에서 쓸 타임라인을 만들었기 때문에 이번에는 Island맵에서 쓸 타임라인을 만들어 볼 것이다. Island맵은 골프카가 아니라 보트를 타면서 등장하는 연출로 해보고자 한다. 그걸 위해서 보트 모델을 구해서 씬으로 가져와주었다. 저번 타임라인과 마찬가지로 애니메이션을 사용해서 보트를 움직여보자. 보트에 Animator 컴포넌트를 추가해주었다. 이제 애니메이션을 만들자 그런데 만들고보니 애니메이션만 있는게 너무 밋밋해서 보트가 움직일때 물보라가 치는 효과를 넣어 주고 싶었다. 검색을 하다 깃허브에 있는 Boat Attack 프로젝트를 한번 까보기로 했다. https://github.com/Unity-Technologies/BoatAttack GitHub - Unity-Technolo..

VR 콘텐츠 제작 2023.12.26

디스크 골프 [#18] - 빌드 시 화면 번지는 현상 고치기

앱을 빌드해서 메타 기기에서 실행해보았는데 화면이 검은색으로 나오는 동시에 스틱에서 나오는 빛이 잔상이 남으면서 여러개가 생기는 현상이 발생했다. 가장 먼저 의심가는건 그래픽인데 기존 vulkan만을 사용하던걸 OpenGL3.0을 추가해서 빌드해보았다. 빌드해보았더니 문제가 개선되지 않았다. 그래서 카메라 앞을 따라다니는 오브젝트가 영향을 줄 수 있다고 생각하여 TitleScene의 Fade오브젝트를 지우고 Title을 비활성화 하고 다시 빌드한 다음 실행해보았다 .그런데도 개선되지 않았고 이번에는 맵자체를 비활성화한다음 다시 실행시켜봤는데 이번에는 제대로 화면이 잘 나왔다. 그럼 맵이 문제라는 소린데 정작 맵이 없는 다른 씬도 화면이 이상하게 나왔다, 그래서 전에 빌드한 파일과 뭐가 달라졌을까 곰곰히 ..

VR 콘텐츠 제작 2023.12.26

디스크 골프 [#17] - 커스텀 핸드

Oculus의 공식 Document를 보면서 Disc Golf에 사용할 장갑 손을 VR핸드로 매핑해보자. https://developer.oculus.com/documentation/unity/unity-isdk-customize-hand-model/ Use Custom Hand Model | Oculus Developers developer.oculus.com 씬을 새로 하나 파주자. 공식 문서에서는 LocomotionRIng을 사용하는데 현재 프로젝트의 SDK는 57.0v라 LocomotionRing이 없기 때문에 새로 프로젝트를 파서 Oculus 60.0v을 다운 받고 메시를 만들어야 할 것 같다. 근데 All in one 60.0v와 mobile까지 깔아보았는데도 LocomotionRIng이 없었..

VR 콘텐츠 제작 2023.12.21

디스크 골프 [#16] - 시네마틱 도입부 만들기

저번에 만든 자동차를 활용해서 게임 도입부에 사용할 시네마틱한 도입부를 만들 생각이다. 카메라의 처리엔 시네머신을 사용하면 적합할 것이라고 생각했고 자동차의 움직임을 어떻게 다룰까 고민하다가, 코드를 짜서 이동하는 것보다 애니메이션을 써서 이동하는게 더 자연스러울 것이라 생각해서 애니메이션을 이용해서 자동차를 움직이기로 했다. https://www.youtube.com/watch?v=Gzvvt7JnGvE 자동차 애니메이션 구현엔 다음 영상을 참고했다. 먼저 Animation폴더를 만들고 Car애니메이터와 Cinema1애니메이션을 만들어줬다. 그리고 만든 자동차 애니메이션의 녹화 버튼을 클릭하고 위치와 로테이션을 변경해주면서 애니메이션을 생성했다. 자동차의 애니메이션을 만들었으니 Cinemachine을 사..

VR 콘텐츠 제작 2023.12.20

디스크 골프 [#15] - UI 적용하기

기존 로비씬에 있는 UI가 세련되지 못해서 바꿔주기로 했다, UI에셋은 Mono Round를 사용했다. 전에 만들어 놓은 UIScene에서 테스트로 UI를 구성해봤다. 실제로 게임을 실행해서 적용된 모습을 보았다. 그런데 토글을 선택했을때 토글이 하얗게 변하는 문제가 발생했다. 플레이모드로 실행해본 결과 토글 자식 중 Selection Border가 토글이 선택되었을때 흰색 이미지로 나타나면서 문제가 발생하는 걸 확인했다. 고민하다 Border도 Mono Round의 에셋 버튼으로 바꿔서 토글을 선택했을때 주변에 흰색 사각형이 둘러싸는 느낌으로 만들기로 했다. 그리고 맵사진이 나타나는 부분도 조금 수정해서 모서리 부분이 둥글게 나오도록 마스크를 사용해서 바꾸어주었다. Not yet을 골랐을때 이미지가 하..

VR 콘텐츠 제작 2023.12.19

디스크 골프 [#14] - 씬 구조 만들기2

저번 시간에 이어서 타이틀 씬도 마찬가지로 vr환경에서 작동하도록 만들어보자 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class TitleMain : MonoBehaviour { public Button btn; public System.Action onLoadLobbyScene; public Transform player; public Transform targetCamera; public OVRInput.Controller controller; private void Update() { this.player.position = this.targetCa..

VR 콘텐츠 제작 2023.12.14

디스크 골프 [#13] - 씬 구조 만들기1

저번에 타이틀씬을 만들었고 이번에 로비씬을 만들어서 맵선택을 가능하도록 만들어보자. 아직 UI를 꾸미지 않은 로비씬이다 기능을 넣어서 특정 맵을 선택해서 입장 버튼을 누르면 그 씬으로 전환되도록 할 생각이다. using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; public class App : MonoBehaviour { private void Awake() { DontDestroyOnLoad(this.gameObject); } private void Start() { AsyncOperation oper = SceneManager.LoadSceneAsyn..

VR 콘텐츠 제작 2023.12.13

디스크 골프 [#12] - 터레인으로 맵 만들기2

터레인을 이용해서 디스크골프의 2번째 맵을 만들어보자 먼저 터레인을 물아래에 만든다음 Set Height를 이용해서 적당한 섬을 여러개 만들어 줬다. 그리고 높이를 조절해서 모양을 만져줬다. 페인트 텍스쳐로 터레인을 색칠하자 만들고나니까 뭔가 허전하다 야자나무를 추가해주면 좋을 것 같다. 터레인에 야자나무가 없기 때문에 3d모델을 찾아서 야자나무를 추가해주려다가 생각해보니까 터레인에 포함되있는 나무는 구매한 에셋이라 설치하면 바람의 영향을 받는 것 처럼 흔들리는 동작을 하기 때문에 에셋사이트에서 야자나무를 다운 받아서 추가하면 쉐이더의 영향을 받지 않을 것이다. 일단 저번에 구매한 PureNature에셋의 나무 프리펩을 살펴보니 트리 아래에 2개의 자식 오브젝트가 있고 첫번째 오브젝트엔 Vegetatio..

VR 콘텐츠 제작 2023.12.08