[Unity 이슈] Addressable & Android Build 문제 해결법 모음
·
유니티(Unity)/이슈 도감
📌 개요  만약 유니티 프로젝트에서 어드레서블을 사용할 때, 안드로이드 빌드 이슈가 종종 발생합니다. 그럴 때마다 ChapGPT 또는 구글링을 통해 해결하곤 합니다. 오늘은 제가 이때까지 어드레서블 이슈를 경험하며 얻었던 해결책을 정리할까 합니다. (사실 오늘 회사에서 어드레서블 빌드 문제로 2시간 동안 삽질함)   여러분은 저처럼 삽질하지 마시길...     📌 해결책 1. Addressables Groups 체크   [ Window ] - [ Asset Management ] - [ Addressables ] - [ Groups ] 클릭 Addressables Groups은 Asset을 그룹으로 관리하는 핵심 개념이예요. 먼저 위처럼 Group이 잘 추가됐는지 확인합니다.       여기서 중요한..
[EditorWindow] 기본적인 에디터 창 구축
·
유니티(Unity)/커스텀 에디터
📌 개요     최근 Unity Editor 제작에 관심이 많습니다.현업에서 기획자 또는 아트를 위한 툴 제작게임 개발에 자주 사용되는 기능을 툴로 제작신규 프로젝트를 위한 기본 템플릿등등... 단순히 게임 컨텐츠 제작 뿐만 아니라, 툴을 직접 개발하는 경우도 많더라구요. 그래서 Unity Editor에 대해 기초부터 공부하고자 합니다.     📌 EditorWindow  EditorWindow : Unity Editor 내부에 개발자를 위한 도구나 툴을 제작할 수 있도록 돕는 클래스 Unity의 기본 제공 창인 Scene, Inspector, Console과 비슷한 동작을 하는 커스텀 창을 만들 수 있습니다. EditorWindow을 통해 주로 사용하는 주요 메서드와 이벤트를 살펴보도록 하겠습니다...
[EditorUtility.DisplayDialog] 팝업 창 제작
·
유니티(Unity)/커스텀 에디터
📌 개요   Unity 에디터 툴을 만들 때 간단한 팝업 창을 표시하고 싶지 않나요? 오늘은 Unity에서 제공하는 기능 중 하나인 EditorUtility.DisplayDialog 메서드에 대해 알아보겠습니다.     📌 EditorUtility.DisplayDialog 1. 확인 및 취소 팝업창public static bool DisplayDialog( string title, // 팝업 창 제목 string message, // 팝업 창에 표시할 메시지 string ok, // 확인 버튼의 텍스트 string cancel = null // (선택) 취소 버튼의 텍스트);  시그니처는 위와 같습니다. 반환 값은 bool 형태로, ..
[FilePath] 에디터 환경 변수 저장
·
유니티(Unity)/커스텀 에디터
📌 개요   Unity 에디터에서 툴을 개발할 때 데이터를 영구적으로 저장할 필요가 있습니다. A 개발자와 B 개발자가 해당 툴의 세팅을 서로 다르게 가져갈 수 있기 때문입니다.       예를 들어, Unity에서 제공하는 기본 레이아웃이 여기에 해당합니다. 개발자는 자신이 원하는 레이아웃을 선택할 수 있으며, Unity를 껐다 키면 그 상태를 유지합니다. 왜냐하면 레이아웃 데이터가 PC 로컬 환경에 저장되기 때문입니다.      레이아웃 데이터는 사용자 환경에 따라 위 경로(~/Preferences) 폴더에 저장됩니다. 이건 프로젝트 상위 폴더가 아닌, PC 로컬 환경에 저장되기 때문에 버전 관리에 포함되지 않습니다. 따라서 PC마다 사용자만의 에디터 환경을 구축할 수 있습니다. 오늘은 커스텀 에디..
[Unity 패키지] AllIn1SpriteShader (응용)
·
유니티(Unity)/유용한 패키지 정리
📌 개요    [ Unity 패키지 : AllIn1SpriteShader (기본) ] [Unity 패키지] AllIn1SpriteShader (기본)📌 개요    최근에 AllIn1SpriteShader 패키지를 구매해서 다양한 연출을 연습하고 있습니다. 이 과정에서 제가 겪은 경험을 토대로 AllIn1SpriteShader을 사용하는 방법과 주의 사항에 대해 정리해보gus6615.tistory.com 이전 포스터에서 AllIn1SpriteShader 패키지에 대해 간단히 살펴봤습니다. 오늘은 AddAllIn1Shader 컴포넌트 기능에 대해 살펴보고, Prefab으로 제작하는 방법과 인스턴싱에 대해 살펴보겠습니다.     📌 AddAllIn1Shader 컴포넌트   AddAllIn1Shader 컴..
[Unity 패키지] AllIn1SpriteShader (기본)
·
유니티(Unity)/유용한 패키지 정리
📌 개요    최근에 AllIn1SpriteShader 패키지를 구매해서 다양한 연출을 연습하고 있습니다. 이 과정에서 제가 겪은 경험을 토대로 AllIn1SpriteShader을 사용하는 방법과 주의 사항에 대해 정리해보겠습니다.     📌 AllIn1SpriteShader 패키지란?  [ Unity Asset : AllIn1SpriteShader ] All In 1 Sprite Shader | 시각 효과 셰이더 | Unity Asset StoreAdd depth to your next project with All In 1 Sprite Shader from Seaside Studios. Find this & more 시각 효과 셰이더 on the Unity Asset Store.assetstore..
[Git] Repository 복사하는 방법 (깊은 복사)
·
IT/Git
✍️ 개요   최근에 리포지토리를 복사하여 새로운 리포지토리를 만들어야 했습니다. 이때, 두 리포지토리는 같은 이력을 공유하지만 서로 별개의 형상 관리가 필요했습니다.   위처럼 단순히 기존 리포지토리의 모든 파일을 복사하여 새로운 리포지토리를 붙여넣는다고 해결되지 않습니다.      📌 해결책  해결책 : git mirror 사용   $ git clone --mirror {Old_Repository_URL}  Git Bash를 열어 위 명령어를 입력하여 리포지토리의 모든 데이터를 복사    $ git {Old_Repository_Name}.git 미러링이 끝나면 해당 리포지토리 이름의 폴더로 이동     $ git remote set-url --push origin {New_Repository_URL..
[Unity 기능] 2D Bone Animation 제작
·
유니티(Unity)/콘텐츠 기능
✍️ 개요   Bone Animatin은 Skeletal Animation 기법을 의미하며, Sprite에 뼈대를 생성하여 모델을 움직이는 기법입니다. 더 자연스러운 움직임을 재공하며 재사용성이 높아 많이 활용되고 있습니다. 오늘은 2D 환경에서 Bone Animation을 제작하는 방법에 대해 알아보도록 하겠습니다.      📌 환경 설정  UPM(Unity Pacakge Manager)에서 2D Animation 패키지를 설치합니다. 이 패키지는 Bone Animation 제작 기능을 제공합니다.    추가로 2D PSD Importer 패키지를 설치합니다. 이 패키지는 포토샵(PSD) 파일을 Unity에 Import 할 수 있도록 해줍니다. 포토샵에서 제작한 레이어들을 온전히 보존해주기 때문에 R..
[Unity 패키지] Hot Reload : 동적 코드 수정
·
유니티(Unity)/유용한 패키지 정리
✍️ 개요  Hot Reload는 Unity Editor Play 모드 도중 코드를 동적으로 수정하는 기술입니다. Play 도중 스크립트를 수정하려면 Play 모드를 끄고 수정하고 다시 Play 모드로 들어가죠. 하지만 이 과정은 불필요한 시간 소모가 많이 발생합니다. Hot Reload는 이런 과정을 생략함으로써 개발 시간을 크게 단축시켜 줍니다.    [ Unity AssetStore : Hot Reload ] Hot Reload | Edit Code Without Compiling | 유틸리티 도구 | Unity Asset StoreUse the Hot Reload | Edit Code Without Compiling from The Naughty Cult on your next project. F..
[Unity 기능] 2D Endless Platform 구현 (2편)
·
유니티(Unity)/콘텐츠 기능
✍️ 개요    [ 2D Endless Platform 구현 (1편) ] [Unity 기능] 2D Endless Platform 구현 (1편)✍️ 개요    최근에 끝이 없는 2D Platform을 제작하고 있습니다. 하나의 Layer만 사용하는 Serial Endless Platform, 그리고 여러 개의 Multi Layer을 사용하는 Parallel Endless Platform으로 구성하려고 합니다.gus6615.tistory.com 이전에 끝이 없는 2D Platform 기능에서 하나의 Layer만 사용하는 Serial Endless Platform을 구현했습니다. 오늘은 하나가 아닌, 여러 개의 Layer을 사용하는 Parallel Endless Platform을 구현해보도록 하겠습니다. ※ ..