반응형 Unity9 [Unity] Android 버전 수동 업데이트 하는 방법 Android 버전 수동 업데이트 하는 방법 유니티 에디터를 재설치하여 프로젝트 빌드시 android 버전이 맞지 않아 업데이트를 했지만 제대로 업데이트가 되지 않아 수동 업데이트를 찾아봤다. 1. 환경 변수 JAVA_HOME 설정 환경 변수 JAVA_HOME을 설정 해줘야한다. 작업 표시줄 검색창에 "고급 시스템 설정"을 찾아서 선택 * 환경 변수 선택 새로 만들기 변수 이름에는 "JAVA_HOME"을 입력하고 변수 값은 유니티 에디터에서 "Edit → Preferences.. → External Tools → JDK 경로 패스 카피" 해서 넣어주면 됩니다. 완료 후 Cmd에서 java를 입력하면 나오는 모습 ( 모두 설정하고도 해당 화면이 나오지 않는 다면 컴퓨터 재시작을 권유드립니다.) 2. 안드로.. 2023. 12. 16. [게임 엔진] 유니티(Unity) vs. 언리얼(Unreal Engine) 어떤 게임 엔진을 선택해야 할까? 유니티(Unity) vs. 언리얼(Unreal Engine) 어떤 게임 엔진을 선택해야 할까? 서론 게임 개발에 있어서 가장 중요한 결정 중 하나는 어떤 게임 엔진을 선택할 것인가입니다. 현대 게임 엔진 중에서 가장 주목받는 두 가지는 Unity와 Unreal Engine입니다. 이 둘 중 어떤 것을 선택해야 하는지 결정하는 것은 매우 중요한데, 각각의 특징과 장단점을 살펴보고 결정해야 합니다. 장단점 아래는 장단점을 표 형식으로 정리한 것입니다. Unity: 장점 설명 사용자 친화성 초보자에게 적합하며, 직관적이고 쉬운 인터페이스를 제공합니다. 다양한 플랫폼 지원 크로스 플랫폼 개발에 용이하며, 다양한 플랫폼에 손쉽게 배포할 수 있습니다. 커뮤니티 및 에셋 스토어 거대한 개발자 커뮤니티와 에셋 스토어를.. 2023. 12. 7. Unity - 다운로드 에셋 버전관리 직접하기 유니티가 에셋번들은 직접 관리를 해주고 있으나 때로는 직접 버전을 관리해야할 수 있다. 다운로드 받을 파일에 대한 정보를 담아둔 텍스트가 있으면 좋을 것 같다. 구조는... 1.Filename : 파일명 2.path : 다운로드 경로 3.HashKey : 파일 해쉬값 ... 맨처음 파일 정보를 담아둔 텍스트를 받아 메모리에 저장한다. 그리고 로컬에 저장된 파일과 다운로드 받을 파일의 값을 비교하여 다운로드한다. 해시값이 서로 달라 다운받은경우 파일의 저장위치를 ..[파일명]/[HashKey]/ 으로 해두면 다음 패치시 파일 비교할때 해당 경로에 파일이 있는지 비교하여 없으면 다운로드 있으면 패스 하게 할 수 있다. 이후 파일을 다운로드하고는 이전에 받아둔 파일은 제거하는것이 좋을 것 같다. 다운받은 경로.. 2021. 2. 15. [UNITY]Unity AssetBundle.RecompressAssetBundleAsync Unity AssetBundle.RecompressAssetBundleAsync 유니티 에셋번들파일을 재압축하여 저장하는 함수. [사용이유] UnityWebRequestAssetBundle를 통해 로드된 LZMA 압축 에셋 번들은 자동으로 LZ4 압축 포맷을 통해 다시 압축되어 로컬 파일 시스템에 캐시된다. UnityWebRequestAssetBundle를 사용하지 않고 LZMA 압축 에셋 번들을 로컬디스크에 저장할경우 에셋번들 로드가 상당히 무거워진다. AssetBundle.RecompressAssetBundleAsync를 활용하여 다운받은 LZMA형식의 에셋번들을 가벼운 형식으로 재압축하여 앱네 로드를 빠르게 할 수 있다. [함수원형] public static AssetBundleRecompressO.. 2020. 8. 5. [UNITY]Null Reference Exception이란 무엇입니까? Null Reference Exception이란? 어떤 오브젝트에도 참조하고 있지 않는 참조 변수에 액세스하려고 하면 NullReferenceException이 발생합니다. 참조 변수가 오브젝트를 참조하지 않으면 그것은 null로 취급될 것입니다. 변수가 “NullReferenceException”을 실행함에 따라 null일 때 실행시 오브젝트에 액세스하려고 하는 것을 알려줍니다. C# 및 JavaScript의 참조 변수는 C 및 C++ 포인터의 개념과 비슷합니다. 어떤 오브젝트도 참조하고 있지 않은 것을 나타 내기 위해 참조 형식은 null이 기본입니다. 그러므로, 참조 되고 있는 오브젝트에 액세스하고, 없으면NullReferenceException을 얻습니다. 코드에서 NullReferenceExce.. 2020. 7. 24. [UNITY]유니티에서 알아야 할 필수 클래스 다음 클래스들은 Unity에서 스크립팅을 할 때 사용하는 가장 중요한 클래스의 일부입니다. 이 클래스는 Unity 스크립팅 시스템의 핵심 부분을 커버하고, 어떠한 함수와 이벤트를 사용할 수 있는지 찾는 것에 적합합니다. 클래스 설명 MonoBehaviour 새로 생성한 모든 Unity 스크립트의 기본이 되는 클래스입니다. MonoBehaviour 레퍼런스는 전체 기능 목록과 게임 오브젝트에 추가할 수 있는 표준 스크립트 이벤트를 제공합니다. 상호작용하는 것이나 게임의 각 오브젝트의 컨트롤을 찾고 있다면 여기부터 시작하십시오. Transform 모든 게임 오브젝트는 공간(3D, 2D 모두)에 위치, 회전, 스케일을 가지고 있으며 그것은 트랜스폼 컴포넌트로 표현됩니다. 그리고 트랜스폼 컴포넌트는 많은 유용한.. 2020. 7. 24. [UNITY]유니티에서 ClearCache는 무조건 캐시를 다 지울까? Caching.ClearCache 형태 public bool ClearCache(); public bool ClearCache(int expiration); 내용 현재 응용프로그램에 캐싱되어있는 모든 캐시를 제거합니다. 이슈 반환값이 bool 형이며 항상 성공하지 않습니다. 어디선가 캐싱파일을 사용하고 있으면 해당 함수는 false를 반환합니다. 캐시 제거가 성공적으로 이루어 졌을 경우 true를 반환합니다. 2020. 6. 26. [NGUI]Widgets and panels should not be on the same object! Widget must be a child of the panel. 에러 메세지 : Widgets and panels should not be on the same object! Widget must be a child of the panel. 원인은 Widget과 panel component가 같은 오브젝트에 추가되어있어서 발생하였으며 , Widget과 Panel 중 필요한 component만 사용 하면 해결된다. 2020. 6. 26. [NGUI]You can't place widgets on a layer different than the UIPanel that manages them.If you want to move widgets to a different layer, parent them to a new panel instead. 경고메세지 : You can't place widgets on a layer different than the UIPanel that manages them. If you want to move widgets to a different layer, parent them to a new panel instead. 원인은 Instantiate 하는 오브젝트의 Layer가 부모의 Layer가 다른경우 발생하게 되어 Instantiate한 오브젝트의 Layer를 부모와 동일하게 변경해주거나 원본 오브젝트의 Layer를 부모와 동일하게 지정하면 해결 된다. 2020. 6. 26. 이전 1 다음 728x90 반응형