호우동의 개발일지

Today :

article thumbnail
[Unity 3D/VR] XR Interaction Toolkit으로 HMD 생성 및 시뮬레이터로 사용

HMD 새로운 Scene 생성 File → New Scene → Standard(URP) 선택 저장 장소는 Scenes 폴더 안에 적당한 이름으로 저장 XR Origin 게임 오브젝트 생성 Hierarchy 창에서 우클릭 → XR → XR Origin(VR)을 클릭 XR Origin(VR) 게임 오브젝트는 뭘까? HMD나 컨트롤러 등 연동된 장비의 기준이 되는 오브젝트 VR/AR 세상의 중심이나, 헤드셋 기준 높이 등을 설정할 때 사용 일반적으로 HMD와 연동된 메인 카메라 게임 오브젝트와 양손 컨트롤러와 연동된 게임 오브젝트 등을 자식으로 배치 자동적으로 메인 카메라가 XR Origin 게임 오브젝트의 자식 오브젝트로 들어감 XR Interaction Mananger라는 게임 오브젝트도 함께 생성 Ma..

article thumbnail
[Unity 3D] 메가 번들 기간 한정 할인 안내 ( ~ 4월 27일)
Etc 2023. 4. 7. 12:41

* 이 글은 어필리에이트 링크를 포함하고 있습니다. 링크를 클릭하셔서 추천하는 에셋을 구매하시면 어필리에이트에게 수익이 발생합니다. 링크를 클릭만 하는 것으로는 수익이 발생하지 않지만, 프로젝트의 개발과 우수한 에셋의 추천에 큰 도움이 됩니다. 안녕하세요! 여태까지 CS/ 알고리즘 관련 글만 써오다가 이렇게 정보 관련 글로 찾아뵙는 건 처음이네요. 다름이 아니라, 이번에 유니티에서 한국 시간 2023년4월 6일 오전 12시부터 4월 27일 오전 12시까지 메가번들을 할인 판매한다고 해서 알려드리러 왔습니다! 이번에 판매하는 메가 번들의 테마는 시간 여행(Time Travel) 입니다! 사실 테마는 우리에게 중요한 게 아니죠! 이게 어떤 패키지로 구성되어 있고, 얼마나 세일하는지가 중요하겠죠? 완성도 높은..

article thumbnail
[Unity 3D] 텍스트 최적화를 위한 2가지 사항 정리
Unity Study/Concept 2023. 2. 12. 19:51

텍스트 아웃라인/쉐도우(Outline/Shadow) 텍스트에 아무런 효과를 안 줬을 때(Outline X, Shadow X) → vertex : 344 아웃라인/쉐도우 (Outline / Shadow) 아웃라인과 쉐도우는 vertex 낭비가 굉장히 심함 아웃라인 > 쉐도우 (아웃라인이 쉐도우보다 낭비가 더 심함) 아웃라인을 적용해 줬을 때 → vertex 2500개 쉐도우 적용해 줬을 때 → vertex 1000개 모바일 게임에서는 한 장면에 vertex의 개수가 10만 개가 넘어가면 유니티 엔진 자체에서 경고가 무수히 날아옴 굉장히 유의해서 사용해야 함 vertex 개수는 항상 신경 써줘야 함 BestFit 입력한 텍스트가 Rect Transfrom(설정해 둔 사각형)에 다 들어올 수 있도록 글자 사이..

article thumbnail
[Unity 3D] 캔버스 최적화를 통한 퍼포먼스 향상(Text 예시)
Unity Study/Concept 2023. 2. 10. 17:53

Canvas 최적화 프로파일러로 분석 Text를 변경하는 스크립트를 통해 프로파일러로 퍼포먼스 분석 PostLateUpdate.PlayerUpdate를 보면 Canvas에서 그려지는 작업이 발생하는 것을 알 수 있다. → 텍스트를 변경하는 작업은 Canvas에서 발생 버텍스 버퍼 유니티의 UI는 화면에 그려질 때 버텍스 버퍼(Vertex Buffer)로 그려짐 Scene → WireFrame으로 보면 버텍스 버퍼를 볼 수 있음 버텍스는 하나의 선(line) 단위 해당 그림에서는 총 28개의 버텍스가 존재 더보기 버텍스 버퍼는 Canvas에 위치함 그려지는 과정 버텍스 버퍼의 변형이 발생 해당 버텍스 버퍼를 리빌드(Rebuild) 최적화가 필요한 이유 하나의 UI가 변경이 일어나면 그 Canvas 전체를 ..

article thumbnail
[Unity 3D] 프로파일러(Profiler)로 퍼포먼스 스파크(Performance spark) 현상 알아보기
Unity Study/Concept 2023. 2. 9. 20:51

프로파일러 유니티 엔진에서 제공해 주는 유니티에서 개발하고 있는 앱을 분석할 수 있는 툴 매 프레임마다 구체적인 퍼포먼스를 분석할 수 있음 게임의 최적화를 위해 사용 Deep Profile을 통해 정밀 분석 가능 어떤 모드로 분석을 하는 것은 자유지만 필자는 Hierarchy로 보는 게 편해서 해당 모드로 분석 해당 상태에서 게임을 시작하면 분석 차트가 흘러나옴. Hierarchy EditorLoop : 에디터 상에서만 사용되는 퍼포먼스 최적화 측면에서는 전혀 고려하지 않아도 됨 PlayerLoop : 프로그래머가 직접 조작하는 부분들 최적화 측면에서 고려해야 하는 부분 해당 부분을 분석해야 함 프로파일러 분석하는 법 오브젝트를 회전시키는 스크립트가 아래처럼 존재한다. 해당 스크립트는 Update 함수에..

article thumbnail
[Unity 3D] 팝업시스템(2) - 버튼 기능 구현(싱글톤, 델리게이트 활용)
Unity Study/Concept 2023. 2. 6. 23:17

버튼을 누르면 실행될 함수를 만들기 위해 PopUpManager.cs라는 스크립트를 따로 만들 것이다. 해당 스크립트에는 팝업버튼이 해야 하는 기능 (팝업 닫기, 왼쪽 버튼 눌렀을 때, 오른쪽 버튼 눌렀을 때 등)으로 구성되어 있다. PopUpManager.cs 기본 설정 - 싱글턴 패턴 public class PopUpManager : MonoBehaviour { // 싱글턴 패턴 ~~~~~~~~~~~~~~~~~~~~~~~~ private static PopUpManager _instance; public static PopUpManager Instance { get { return _instance; } } // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ public GameOb..

article thumbnail
[Unity 3D] 팝업시스템(1)- 텍스트 길이에 반응하는 팝업창 구현 및 설명
Unity Study/Concept 2023. 2. 4. 20:34

1. 레이아웃 생성 및 설정 캔버스의 하위 요소로 빈 오브젝트인 max와 그 하위 오브젝트인 popup을 만든다. max와 popup에 Vertical Layout Group 컴포넌트를 추가한다. max - 만들고 있는 팝업의 최대 크기를 결정하기 위해 생성 최대 영역의 크기를 보기 위해 임시로 이미지 삽입 Child Alignment를 Middle Center로 맞춘다. → 팝업 텍스트 가운데 정렬 Control Child Size Width/Height를 체크한다. 하위 요소에 의해서 사이즈가 결정되도록 함. → 텍스트의 길이에 따라 팝업창의 길이를 조절하기 위함 Child Force Expand Width/Height 체크를 해제 PopUp 하위 요소로 팝업 배경을 위한 Image UI(BackGr..

article thumbnail
[Unity 3D] UI - Layout Element 개념 정리 및 Text에 활용
Unity Study/Concept 2023. 2. 3. 23:30

해당 포스팅은 Layout과 Layout Controller의 개념을 알고 있다는 전제로 하는 설명이기 때문에 아래 링크에서 Layout Controller에 대한 개념을 보시는 것을 추천드립니다. [Unity 3D] UI 레이아웃 개념과 컨트롤러(Layout Controller) 기초 정리 Layout Controller 오브젝트를 일정한 규칙에 따라 배치하는 것 Inspector : 디버그(Debug) 모드 Min Width : 최소한의 너비 Min Height : 최소한의 높이 Preferred Width : 선호되는 너비 Preferred Height : 선호되는 높이 howudong.tistory.com 더보기 Layout Element Layout Controller 안에 있는 UI 요소들이 ..