유니티 Localization(지역화)에서 iOS 앱 이름(국가 언어) 설정하는 방법1)프로젝트 설정(project settings)의 Localization 메뉴로 이동하고 현재 이용가능한 지역(Locales)를 확인합니다. 2)Localization 설정의 하단 Metadata에서 새로운 메타데이터를 추가합니다. +버튼을 클릭하고 iOS의 App Info를 선택합니다. 3)iOS App Info 메타데이터가 추가된것을 확인할수있습니다. 4)문자열 테이블(StringTable)에서 앱 이름을 표시하기 위한 키(key)와 지역에(locale) 따라서 표시할 앱 이름의 지역 언어 문자열을 입력합니다. 5)iOS App Info에서 테이블 및 키를 설정하고 Entry Name 에 추가된 앱 이름 목록을 확..
유니티(Unity)에서 NDI 플러그인(KlakNDI)을 사용하여 다른 장치(Mad mapper)로 비디오 스트림 전송하기NDI(Network Device Interface)는 NewTek에서 개발한 비디오 전송 프로토콜로 로컬 영역 네트워크(LAN)를 통해 장치간 비디오 스트림을 전송하는데 사용할수있습니다.https://ndi.video/ NDI - Removing the limits of video connectivity.Adaptable to any industry One core platform. Unlimited use cases. From world-class broadcast and production studios to consumer-grade video setups, NDI integr..
유니티(Unity)에서 Scoped 레지스트리 추가하고 패키지 설치하기프로젝트에 Scoped registries(범위가 지정된 레지스트리)를 추가하면 패키지 관리자에서 해당 사용자 정의 패키지 컬렉션에 액세스할수있습니다.1)프로젝트 설정(project settings)의 package manager에서 Scoped registries 정보를 입력하고(Name, URL, Scope) 적용합니다(apply) 2)패키지 관리자의 my registries에서 추가한 레지스트리를 확인할수있으며 해당 레지스트리 및 패키지 콜렉션 제공자(Keiijiro)의 모든 공개 패키지를 설치할수있습니다. 패키지가 표시되지않거나 검색에서 누락되는 경우3)패키지 관리자 상단 좌측에서 install package by name을 ..
유니티(Unity) 에디터 및 게임 백그라운드 실행(Run In Background)1)기본적으로 애플리케이션(에디터 및 게임)이 백그라운드(Background)에 있을 때 플레이어는 실행 중지됩니다. 2)에디터를 백그라운드에서도 실행하려면 프로젝트 설정(project settings)의 플레이어(player)에서 Run In Background에 체크합니다. 3)게임을 실행하고 에디터가 백그라운드에 있어도 일시 중지되지않습니다.
유니티(Unity) 모든 대상 플랫폼에 대하여 렌더러 기능 추가 및 속성 설정 참고프로젝트의 렌더러 속성 및 기능을 대상 플랫폼에 따라서 동일하게 또는 차별적으로 설정해야합니다. 1)프로젝트 설정(project settings)의 그래픽(graphics)에서 프로젝트에 사용중인 렌더 파이프라인 에셋을 확인합니다. 2)Settings 폴더에서 대상 플랫폼에 따라서 설정할수있는 URP 에셋 및 렌더러를 확인합니다. 3)프로젝트 설정의 품질(quality)에서 대상 플랫폼 수준(Levels)에 대해서 설정한 URP 에셋 및 렌더러를 확인합니다.현재 유니티 에디터에서 performant 수준을 사용중이며 해당 URP 에셋 및 렌더러의 속성을 설정합니다. 4)렌더러 기능을 추가하려면 add renderer f..
유니티(Unity)에서 특정한 쉐이더의 재질을 생성하는 방법1)프로젝트의 에셋(Assets) 폴더에서 새로운 쉐이더를 생성합니다. 2)특정한 쉐이더를 사용하는 재질을 생성하려면 해당 쉐이더를 선택하고 마우스 우클릭한후 create의 material을 선택합니다. 3)해당 쉐이더를 사용하는 재질을 생성한것을 확인할수있습니다.
유니티 텍스처(Texture) 객체 생성과 제거 예시(메모리 할당과 해제)new 키워드를 사용하여 런타임에서 동적으로 생성한 객체의 경우텍스처가 불필요하면 명시적으로 객체를 파괴하고 참조를 해제합니다.Texture2D texture = new Texture2D(2, 2); if (texture != null) { Destroy(texture); texture = null; } Destroy(texture);객체는 메모리에서 즉시 해제되지않습니다. 메모리에서 객체가 실제로 해제되는 시점은 가비지 컬렉터( GC)가 이 객체를 수거할 때입니다. texture = null;객체에 대한 참조가 더 이상 없기 때문에 이 객체는 GC의 수거 대상이됩니다. 객체를 수거하는 시점은 GC 의 주기에 따라..
유니티 In Place 애니메이션을 Root Motion으로 설정하는 방법(RootMotionScript.cs)루트 모션(root motion)이 없는 캐릭터의 애니메이션은 제자리(in place)에있는 경우가있습니다 OnAnimatorMove 콜백을 구현하는 스크립트를 사용하여 in place 애니메이션을 root motion으로 설정하는 방법입니다. https://docs.unity3d.com/Manual/ScriptingRootMotion.html Unity - Manual: Scripting Root MotionScripting Root Motion Sometimes your animation comes as “in-place”, which means if you put it in a scene..
유니티(Unity) 안드로이드 빌드 API 34 앱 크래시 문제해결유니티 에디터 버전 2022.3.11f1에서 빌드한 안드로이드 앱(API 34)을 장치에서 실행할때 앱 크래시가 발생합니다 apk 형식 빌드는 장치에서 앱 크래시가 발생하지않지만 aab 형식 빌드를 구글플레이콘솔(Google Play Console)에서 테스트 출시한 경우 앱 크래시가 발생합니다.안드로이드 대상 API 수준 34 , aab 업로드 테스트 출시 앱에서 앱 크래시 문제해결유니티 에디터 상위 버전(예를들어 유니티 2023.2.20f1, 유니티.6000.0.23f1)에서 프로젝트를 빌드합니다. 안드로이드 앱(API 34, aab 형식)을 실행하면 앱 크래시가 발생하지않습니다.유니티 6000.0.23f1에서 API 34 buil..
유니티(Unity) 사용자 데이터 파일 저장 사용법 문서 모음(Persistent Player Data)Persistent Data – How to save your game states and settings https://youtu.be/uD7y4T4PVk0 Persistence: Saving and Loading Data https://learn.unity.com/tutorial/persistence-saving-and-loading-data?language=en#saving persistent player data in unity https://learn.unity.com/project/saving-persistent-player-data-in-unity?language=enoverview an..
유니티(Unity) 안드로이드 런처 앱 이름(언어) 변경하기(Localization, App info)유니티에서 빌드한 안드로이드의 런처(launcher)에서 표시되는 앱 이름(언어)을 변경하는 방법. Localization의 App info를 이용한 방법유니티 지역화(Localization) 패키지 설치 및 기초 사용법1)프로젝트 설정(project settings)의 Localization 설정으로 이동합니다. 하단의 metadata에서 +버튼을 클릭합니다. 2)안드로이드(android)의 app info를 선택합니다. 3)안드로이드 앱 정보(app info)가 추가된것을 확인할수있습니다. 4)문자열 테이블(StringTable)에서 앱 이름 표시를 위한 키(key)와 지역에(locale) 따라서 ..
유니티(Unity) 씬에서 특정 컴포넌트를 포함하는 오브젝트 검색 및 필터링(Hierarchy, Type)1)씬(Scene)이 다양한 유형의 컴포넌트 및 사용자 스크립트를 포함하는 오브젝트로 구성되어있습니다. 2)특정 컴포넌트를 포함하는 오브젝트만 표시하려면 Hierarchy의 아래 표시한곳을 클릭하고 Type으로 변경합니다. 3)컴포넌트 또는 사용자 정의 스크립트 이름을 검색하면 해당 컴포넌트를 포함하는 오브젝트만 표시합니다.