내일배움캠프 69

[내일배움캠프 67일차] 빌드 후에도 오류가 난다고요?

문제빌드 후 플레이를 했는데, 특정 부분에서 UI가 나타나지 않는 문제 상세 문제: Unity 내부에서는 정상적으로 작동하며, 표시도 됨. Simulator에서도 정상적으로 표기되며, 특별한 문제가 추적되지 않음 원인추측한 원인: 보이지 않는 UI는 별도의 캔버스를 사용하는 UI. 해당 UI의 표시 방식이 오버레이가 아닌 카메라로 되어있음. 그래서 빌드시 표시되지 않은 게 아닌가?해당 추측이 잘못된 이유: 그런 경우, Editor나 Simulator 상에서도 보이지 않아야 한다. 하지만 이 현상은 '빌드 시'에만 발생한다. 실제 원인:빌드 후에도 Null Reference 오류가 발생했다. 휴대폰-PC연결을 통해 휴대폰에서 테스트용 어플 사용 시 오류를 파악할 수 있다. 배경이 노란색이라 글씨가 잘 안보..

카테고리 없음 2025.07.14

[내일배움캠프 66일차] Instance는 잘 확인하자

발생 문제 문제: Stage 진입 시, 조건이 맞음에도 즉시 진입되지 않고 한 번 더 눌러야 진입되는 현상 발생. 원인: 디버그 로그를 통한 확인 결과, 디버깅 참고 2 항목이 나타남 ⇒처음 진입 시 보유 중인 캐릭터가 인식이 되지 않고 있음게임 매니저에서 게임 시작 시 Load를 통해 캐릭터 데이터를 불러오고 있으나, 해당 로드 시 OwnedCharacters에 즉시 할당되고 있지 않은 것으로 보임확인 결과, GameManager의 Load 작동 시, CharacterManager가 Initialize 되지 않음.Stage를 선택하자 CharacterManager가 이니셜라이즈 되었다고 나타나는 모습. 해결: Load시 DataSaver의 Load함수에서 LoadAllCharactersAsync(..

Unity_본캠프 2025.07.11

[내일배움캠프 65일차] 어차피 다 똑같은 애니메이션. 편하게 가자.

1. 어차피 같은 조건에 움직이는데 뭔가 방법이 없을까캐릭터에게 애니메이션을 넣어주려면 필수적인 것이 있다.바로 Animator Controller(통칭 애니메이터) 애니메이터에 Animation clip을 넣어 Transition(화살표)로 연결하고, 조건을 설정해주면 캐릭터들은 설정된 Animation clip을 따라 움직인다.기본적으로 모두 동일한 애니메이션을 사용한다면, 그냥 하나의 애니메이터를 만들어두고 공용으로 사용시키면 된다.(복사 붙여넣기도 필요없다) 보통 하나의 애니메이터만 사용하는 경우는, 같은(혹은 거의 유사한) 모델링/같은 행동을 사용하는 경우다.(가령, 게임에서 인간/전사 캐릭터를 사용하는 플레이어는 모두 같은 애니메이터를 사용할 것이다) 하지만 전사랑 궁수는 필연적으로 다른 애니..

Unity_본캠프 2025.07.10

[내일배움캠프 64일차] 우와 이것봐 Missing!이야!

1. 제목의 이유 플레이어 애니메이션을 넣는데 노란색 불을 띄우며 귀엽게도 Missing! 이라고 친절하게 알려주는 저 데이터를 보라. 2. Missing이 난 이유이유는 간단하다.저 오브젝트를 못 찾는 이유가, 뭔가 누락이 된 게 아니라, 단순히 오브젝트에 이름이 Bone이 아니라 Root로 되어있어서 난 문제다.(오브젝트 제작자와 애니메이션 제작자가 동일하다) 근데 저기에 오른쪽 클릭을 눌러도, Remove 프로퍼티 밖에없다...그럼 이걸 못 쓰는가?겨우 오브젝트 이름 하나 틀렸다고 못쓰면 이보다 더 아까운 일이 없다.(구조 자체가 전혀 다르면 눈물을 좀 머금고 버려야하지만) 하지만 구조가 같다면? 해결 방법은 두 가지가 있다. 1. 오브젝트의 이름을 바꾼다- 가장 편하고 간단한 방법. 모든 애니메이..

Unity_본캠프 2025.07.09

[내일배움캠프 63일차] 빌드 시 오류의 원인2

Addressable을 사용할 때 발생할 수 있는 오류빌드를 할 때, Addressable에서 오류가 날 수도 있다.오류 코드 순서상 가장 초반에 Addressable에서 오류가 나왔다고 뜨게 되는데, 이건 실제로 Addressable에서 오류가 난 것이 아닐 확률이 높다. 왜?: Addressable은 일종의 주소를 통해 불러오는 역할을 하는 건데, Addressable를 사용할 주소 자체를 잘못 쓴 게 아닌 이상(즉, 그냥 런타임에도 뜨는 에러가 아닌 이상) Addressable이 원인은 아니기 때문이다. 그럼 원인은?: 보통 Addressable이 사용된 코드, 혹은 그 외의 코드로 인한 문제.빌드 시 오류가 났을 때 이런 오류들은 Addressable 오류보다 더 뒤에 뜨는데, 거기서 오류가 났으..

Unity_본캠프 2025.07.08

[내일배움캠프 62일차] 빌드 시 오류의 원인 1

빌드할 때는 Editor 전용 코드들을 꼭 확인하자.프로그램을 만들다보면 디버깅용 Editor Window를 만들기도 한다.솔직히 한 번 만들어보면 편해서 애용하게 되기도 하는데, 빌드할 때 이런 애들이 섞여 들어가면 시뻘겋게 오류를 띄우기 쉽다. @: 왜?A: 에디터, 즉, '개발 프로그램' 전용인데 이걸 apk, exe등 '실행 프로그램'에 넣으려고 하니까 오류가 나는 것이다. '빌드'가 되면 Editor는 사용할 수 없고 존재하지 않는 Null 상태가 되니까. 해결 방법은?1. Editor폴더를 생성해서 넣어두기(using UnityEditor를 사용한 경우)2. #if UNITY_EDITOR / #endif 를 사용하기 (1이 아니면서, 코드 내에 디버깅용 코드가 일부 삽입된 경우) 그러니 usi..

Unity_본캠프 2025.07.07

[내일배움캠프 61일차] 빌드를 위한 준비를 해보자(테스트)

1. 빌드를 위한 준비로 무엇을 해야할까 (안드로이드 빌드 기준) 간단한 메뉴를 알아볼 것이다 2. 2-1. Platform Setting여기서 볼 것은 Build App Bundle과 DebugSymbols이다. Build App Bundle: 안드로이드 앱을 빌드할 때, Google Play Store에 배포할 수 있는 앱 번들(AAB)형식으로 생성할지의 여부를 결정하는 옵션.해당 설정을 활성화하면 AAB 형식 파일을 빌드한다. 구글 플레이 스토어에 등록할 때는 필수 체크 AAB?: 기존에 안드로이드 앱인 APK 형식을 대체하는 새로운 배포 형식. 하나의 번들 파일 내에 다양한 기기구성(화면 해상도 등)에 필요한 모든 리소스를 포함하고, 사용자의 기기에 필요한 리소스만 다운로드하여 설치가 가능한 형..

Unity_본캠프 2025.07.04

[내일배움캠프 60일차] 스킬...어떻게 쓰지...?

1. 자. 데이터가 있습니다버프도 있습니다.둘을 합치면 스킬이 됩니다. 말은 쉬운데 스킬 효과가 가지각색이고 사용하는 시점도 가지각색이고 버프 종류도 가지각색이다.나:Holy 2. 어떻게 할까....진짜 어떻게 하지?Lv 1~5까지 있는 스킬이나, 소/중/대로 나뉘는 버프나, 저걸 그대로 가져다 쓸 수는 없다. (비효율적이다)그럼 고정되는 값과 변동되는 값을 나눠야한다.마침 각 스킬레벨이 올라갈 때, 필요한 값은 전부 동일하다.우리는 이에 따라 다음과 같이 나눌 수 있다. 1. 동일한 이름, 동일한 정보 하에 변동하지 않는 정보. (스킬 이름, 스킬 효과, 버프/디버프 종류, 액티브/패시브 여부 등)2. 1 중에서도 변동하지는 않지만 같은 범위 내에서 서로 다른 정보(버프 OR 디버프 / Small M..

Unity_본캠프 2025.07.03

[내일배움캠프 53일차] SO가 편해서 SO를 넣어봤는데…

발생 문제문제: Json을 SO로 변환하도록 Tool을 만들었는데, ‘한글’로 작성된 이름 부분만 정상적인 할당이 되지 않음 원인:예상되는 원인인코딩 문제(UTF-8) : 확인 결과-정상변수 명 오류 : 확인 결과 - 내가 수정했다고 생각했던 부분이 사실 실제 데이터 부분이 아니었다. (다른 폴더에 있는 같은 이름의 파일을 수정한 것)해결: Name으로 되어있던 기존 데이터를 NameKr로 수정하여 해결했습니다. 이후 해당 Json을 제작하는 Excel 시트에도 같은 오류가 발생하지 않도록 만들었습니다. ?: 그런데 왜 SO로 만들었나? 1. 가장 익숙한 것이 SO임2. inspector창에서 조정이 가능함3. 다른 개발자도 SO를 사용 중 고민 중인 것1. 어차피 Json으로도 데이터는 받아올 수..

Unity_본캠프 2025.06.24

[내일배움캠프 52일차] Excel -> Json -> Addressable!

1. 오늘의 고려빠르게 하면 할 수록 좋은 일이다.반복하는 고민: (이렇게까지 대공사를 해야하나? 조금 더 쉬운 방법은 없을까?) 1. 일단 Excel파일을 받아올 수 있는 C# 스크립트를 만든다.2. 이를 이용하여, Excel 파일 내용이 바뀔 경우, Json 파일로 덮어 쓸 수 있도록 한다.3. 이렇게 만든 json 파일을 Addressable로 받아와서 실제로 사용할 수 있게 만들기 특히 1 의 경우 나 뿐만이 아니라 다른 개발자도 사용할 수 있도록 만드는 게 좋을 것이다.그렇기때문에 기존에 가지고 있던 ExcelToJson 프로그램을 활용할 예정. 2. 너무 대공사 아닌가요?솔직하게 말하면, 네.사실 1은 만들 줄 알면 best지만, 사실 excel To Json은 사이트도, 프로그램도 많다. (..

Unity_본캠프 2025.06.23