반응형

개발관련/Unity 8

앱 이름 다국어 설정

다국어 설정은 Localization 해당 패키지를 이용한다. Localization 1.3.2 버전은 버그가 있기 때문에 1.4.3 버전으로 업그레이드 해야한다. Localization Tables를 클릭한다. Localization이란 폴더를 만들고 해당 폴더에 Localization Settings.asset을 저장한다. 그러면 아래의 화면이 뜨고 Locale Generator를 클릭합니다. 저는 한국어와 영어를 선택했습니다. 필요시에 추가적으로 언어를 선택합니다. Generate Locales 클릭합니다. Create 버튼을 클릭합니다. 적당한 폴더를 설정해줍니다. Add New Entry를 클릭하고 key에는 app_name을 입력 영어와 한글에 맞게 앱 이름을 설정합니다. 유니티 인스펙터에서 ..

개발관련/Unity 2023.11.06

해상도 고정

유니티 API를 Screen.SetResolution 호출하는 경우 이 해상도를 맞추기 위해 인게임의 화면 비율을 강제로 늘리거나 줄이거나 해버린다. 세로일때는 정상이나 가로로 돌렸을 경우 타일들이 늘어난 것을 볼 수 있다. 그래서 해상도의 비율을 고정하기 위해서 최대 공약수로 타겟 해상도의 비율을 구한다. 이후에 그 비율만큼 디바이스의 높이와 넓이를 설정한다. public void SetResolutionBasedOnRatio() { DeviceWidth = Screen.width; DeviceHeight = Screen.height; int gcdValue = GCD(TargetWidth, TargetHeight); float targetWidthRatio = (float)TargetWidth / g..

개발관련/Unity 2023.09.02

Addressables 동기 사용법 및 주의점

생성과 릴리즈는 짝을 맞춘다. Addressables.LoadAssetAsync = Addressables.Release Addressables.InstantiateAsync = Addressables.ReleaseInstance 대부분 비동기로 이뤄짐으로 씬에서 여러가지 요청으로 비동기 관리가 힘들다면 var op = Addressables.LoadAssetAsync(path); var prefab = op.WaitForCompletion(); 이런식으로 동기형으로 사용이 가능하다. 주의점 메모리 해제시 씬 객체가 참조를 물고 있다면 Addressables Release를 하더라도 메모리에 계속해서 상주하게 된다. 이때 Addressables Resource 릴리즈 관리는 씬으로 넘어가게 되고 씬에서 ..

개발관련/Unity 2022.09.12

could not create asset from file could not be read

유니티 버전 업을 한 후 이미지 파일이 깨지는 경우가 발생한다. 간단한 해결 방법은 디자이너를 괴롭히는 방법으로 이미지를 포멧 방식을 바꿔서 새롭게 Export를 요청한다. 또는 C#으로 Png 이미지의 메타 정보를 수정하는 방법이 있다. 정상적인 이미지의 메타 정보와 비정상적으로 보이는 메타 정보를 비교하여 빠진 메타 정보를 삽입해주면 된다. 응용하면 재귀로 모든 이미지 파일 검색하여 빠진 메타 정보를 삽입해 줄 수 있다. Code>> using System; using System.Drawing; using System.IO; using System.Windows; namespace ReadPngSample { class Program { static void Main(string[] args) { ..

개발관련/Unity 2021.01.06
반응형