유니티 조이스틱 및 게임 컨트롤러 입력 자료모음 Input.GetAxis 조이스틱 입력 장치에 대해서 가상 축의 값을 반환하는 함수, 조이스틱의 스틱 위치에 따라서 -1에서 1사이의 실수값을 반환합니다. 조이스틱의 중간 위치에있으면 0값을 반환합니다. https://docs.unity3d.com/ScriptReference/Input.GetAxis.html xbox 컨트롤러 사용자 입력 설정 https://learn.unity.com/tutorial/configuring-an-xbox-controller-for-user-input-2019-3#
유니티에서 재질의 render queue 유니티에서 Render Queue(렌더 큐)는 재질이 렌더링되는 순서를 결정하는 데 사용합니다. 렌더링이 진행되는 동안 유니티는 Render Queue의 값이 작은 것부터 렌더링합니다(Render Queue의 값이 같으면 무작위 순서로 렌더링합니다) Render Queue는 0에서 5000까지 범위의 값 중에서 설정합니다(쉐이더의 렌더큐를 사용하려면 -1로 설정합니다) 일반적으로 불투명은 2000, 스카이박스는 2500, 투명은 3000을 사용합니다. 일반적으로 재질은 해당 재질의 쉐이더 render queue를 사용하지만 재질의 렌더 큐 변수(Material.renderQueue)를 사용하여 렌더링 대기열을 오버라이드할수있습니다. RenderQueue(enume..
유니티에서 가져오기(import)한 3D 모델의 축 변환(axis conversion) (유니티 버전 2021.3.6f1) 1)3D 맥스에서 모델을 준비합니다. 2)FBX export 옵션의 advanced options에서 axis conversion의 Up Axis를 Z-up으로 변경하고 내보내기합니다(export) 3)내보내기한 3D 모델을 유니티에서 가져오기합니다. 모델의 축이 정상적으로 설정되어있지않은것을 확인할수있습니다. 4)모델의 가져오기 설정(import settings)에서 bake axis conversion에 체크하고 적용합니다(apply) 5)씬에 모델을 추가하고 확인합니다. 오브젝트의 트랜스폼 회전(rotation)값이 초기화(0, 0, 0)되어 있고 축이 정상적으로 설정되어있는것..
안드로이드 장치 모니터에서 모바일 앱 디버깅하기(android device monitor, 지원중단)(안드로이드 스튜디오3.1에서 지원중단, 안드로이드 스튜디오3.2에서 삭제) https://developer.android.com/studio/profile/monitor?hl=ko 1)PC에 모바일 장치를 연결하고 android device monitor를 실행합니다. 2)Devices에서 현재 연결된 장치를 표시하고 LogCat에서 메시지(messages)가 표시되는것을 확인할수있습니다. 3)LogCat의 saved filters에서 로그캣 메시지 필터 설정으로 이동합니다. filter name, by log tag에 unity를 입력하고 확인합니다. 4)필터가 추가된것을 확인할수있습니다. 5)유니티 ..
유니티 안티 엘리어싱(anti-aliasing) - FXAA, TAA, MSAA, SSAA엘리어싱 아티팩트(Aliasing)엘리어싱 아티팩트(Aliasing)는 넓은 의미에서 실제 세상의 정보를 샘플링하고 이것을 디지털화할때 생길수있는 부작용입니다. 컴퓨터 그래픽에서는 해상도의 한계로 선이 들쭉날쭉하거나(jagged) 가장자리에 계단 모양(staircase)이 나타나는 현상입니다. 높은 해상도의 신호를 낮은 해상도에서 나타내는 경우 발생하며 특히 그래픽 출력 디바이스의 해상도가 직선을 표시할만큼 충분히 높지않다면 엘리어싱 현상이 발생할수있습니다.https://en.wikipedia.org/wiki/Aliasinghttps://docs.unity3d.com/Packages/com.unity.render-p..
유니티 라이팅 기법 - realtime, Baked GI(라이트맵), Precomputed Realtime GI게임에서 전역 조명(GI)을 정확하게 시뮬레이션하는것은 도전적이며 연산 비용이 많이 듭니다. 그래서 게임 플레이 중에 계산하는 대신 미리 이러한 계산을 처리하기 위한 다양한 방법을 사용합니다. 전역 조명(GI, Global illumination)은 빛이 세계에서 상호 작용하고 반사되는 과정을 복잡하게 시뮬레이션하기 위해 사용되는 다양한 기법과 수학적 모델을 설명하는 용어입니다. 일반적으로 유니티의 조명 기법은 실시간(realtime) 또는 사전 계산된(precomputed)으로 간주할 수 있으며 두가지 기법을 조합하여 몰입감 있는 장면 조명을 만들수있습니다. 실시간 라이팅(Realtime L..
유니티 가상현실(VR) 프로젝트 기술문서 모음 유니티, 오큘러스 VR 코스 https://blogs.unity3d.com/kr/2019/11/13/level-up-your-vr-skills-with-a-free-new-course-from-unity-and-oculus/ 유니티 VR UI 튜토리얼 https://learn.unity.com/tutorial/unit-6-best-ui-practices-for-vr 유니티 가상현실 UI 시스템 https://developer.oculus.com/blog/unitys-ui-system-in-vr/ 유니티 모바일 VR 최적화 https://unity3d.com/kr/how-to/optimize-mobile-VR-games
유니티 모바일 게임 프로젝트 최적화 기술문서 모음 모바일 애플리케이션용 3D 아트 최적화(unity learn) https://learn.unity.com/course/arm-unity-mobail-aepeulrikeisyeonyong-3d-ateu-coejeoghwa Arm & Unity: 모바일 애플리케이션용 3D 아트 최적화 - Unity Learn 이 중급 과정에서는 모바일 애플리케이션에 활용할 수 있도록 성능이 최적화된 3D 에셋과 씬을 제작하는 방법을 학습하며, 지오메트리, 텍스처, 머티리얼, 셰이더, 조명을 최적화하는 팁을 주제 learn.unity.com 모바일 게임 성능 최적화, 프로파일링, 메모리, 코드 아키텍처 관련 팁(unity blog) https://blog.unity.com/k..
유니티 게임 최적화 기술문서 모음유니티 성능 최적화 튜토리얼https://unity3d.com/kr/learn/tutorials/topics/performance-optimization Learn game development w/ Unity | Courses & tutorials in game design, VR, AR, & Real-time 3D | Unity LearnFree tutorials, courses, and guided pathways for mastering real-time 3D development skills to make video games, VR, AR, and more.learn.unity.com 유니티 최적화 전문가 팁 문서 https://create.unity.com/..
유니티 안드로이드 환경설정에서 SDK, NDK, JDK 직접 설치할경우 다운로드 웹사이트 Android SDK(Software Development Kit) 일반적으로 안드로이드 스튜디오를 설치할때 안드로이드 SDK도 함께 설치합니다. 안드로이드 스튜디오 설치 진행에서 SDK를 다운로드하고 설치하도록 안내합니다. https://developer.android.com/studio NDK(Native Development Kit) 아래 안드로이드 개발자 웹사이트에서 NDK를 직접 다운로드하고 설치할수있습니다. (안드로이드 스튜디오의 설치 진행에서 NDK를 선택적으로 설치할 수 있는 옵션이 제공됩니다) https://developer.android.com/ndk/downloads?hl=ko https://de..
유니티의 새로운 입력 시스템 기술문서 모음(new input system) 새로운 입력 시스템 소개 https://blog.unity.com/kr/technology/introducing-the-new-input-system Input System(Quick start guide) https://docs.unity3d.com/Packages/com.unity.inputsystem@1.0/manual/QuickStartGuide.html PlayerInput 클래스 https://docs.unity3d.com/Packages/com.unity.inputsystem@1.1/api/UnityEngine.InputSystem.PlayerInput.html#UnityEngine_InputSystem_PlayerI..
유니티 모바일 터치(Touch) 입력 기술문서 모음 iOS 및 Android 장치는 화면을 동시에 터치하는 여러 손가락을 추적할 수 있습니다. Input.touches 속성을 사용하여 화면을 터치한 각 손가락의 상태에 대한 데이터에 액세스할 수 있습니다. 손가락이 화면에 터치된 경우 각 손가락에 대한 정보(위치, 압력 등)가 Input.touches 배열에 저장되며 이 정보를 사용하여 다양한 작업을 수행할 수 있습니다. https://docs.unity3d.com/ScriptReference/Input-touches.html Input.touchCount 속성 public static int touchCount; 현재 화면 터치 개수를 의미합니다(읽기전용) https://docs.unity3d.com/S..