스파르타내일배움캠프 29

[내일배움캠프 71일차] adb를 이용한 디버깅을 해보자

1. 휴대폰에서 작동하는 앱의 디버그로그를 컴퓨터에서 확인해보자 @: ? 저번에 휴대폰에서 디버그 본 적 있는 것 아니었나요?A: 그치만 그건 너무너무 작았어요 2. adb?adb (Android Debug Bridge)안드로이드 디버그 브릿지라는 이름에서 짐작할 수 있듯, 이건 안드로이드 기기와 컴퓨터를 연결해서 여러 작업을 할 수 있게 해주는 명령줄 기반의 도구이다.앱 개발/디버깅/테스트/디바이스 관리 등...에서 여러모로 쓰이는데, 일단은 디버그 용도로 써보도록 한다. @: 왜 유니티에서 자체적으로 제공하는 디버그를 사용하지 않고, 굳이 adb를 사용하나?A: 휴대폰으로 확인할 때는 진짜(너무) 작다. 유니티의 에러 로그가 그대로 뜨긴 하는데 이게....일단 사람이 볼만한 로그는 아니다. (키우는 ..

Unity_본캠프 2025.07.18

[내일배움캠프 70일차] Skill을 만들어가는 과정에 있다

1. 속도가 왜이렇게 느려요: 그러게요....하지만 이것만 해결하면 스킬과 버프와 다이스가 동시에 해결되니까 어떻게든 해보겠습니다. 저 아이템도 만들어야해요 2. 만들고 있는 과정 1. 일단 엑셀을 정리한다 json으로 변환할 엑셀 파일을 정리한다. 기획에서 구성한 데이터 형태와, 실제 json으로 변환하기 좋은 테이블이 다를 수 있으므로 그에 맞춰서 작업하는 것.*가능하면 json으로 변환하기 위해 형식을 맞추는 게 좋다. 뭐든 규칙은 중요하다. (실제로도 작업하기 전에 서로가 편하도록 규칙을 정한다고 한다.)지금은 양측 다 어떤 형태가 좋은지 알 수 없어서 당장 통일을 시킬 수 없는 것이다... 2. 스크립트를 만든다. (SO) 베이스로 사용될 SO를 작성한다. (SkillData.json의 내용을..

카테고리 없음 2025.07.17

[내일배움캠프 69일차] Skill Making 렛츠고

1. 목표우리 게임에 가장 적합한 스킬 메이킹 방법을 연구하고 적용하자 2. 분석현재 제작 중인 게임의 스킬의 특징 1. 캐릭터 별로 Active 스킬 1개, Passive 스킬 1개를 보유한다.=> 캐릭터의 정보SO 안에 스킬의 정보(SkillID)가 들어가야한다.2. Active 스킬은 코스트 소모형, Passive 스킬은 조건 만족형이다.3. Passive 스킬의 조건은 다음과 같이 정리할 수 있다.굴린 주사위의 값을 모두 합친 값이, 지정된 값 이상인 경우 (SumOver)굴린 주사위의 결과에 본인의 시그니처 면을 포함하고, 특정 족보를 만족하는 경우(트리플, 쿼드러플, 스몰스트레이트 등)굴린 주사위가 캐릭터의 시그니처 숫자 값을 표시하고, 나머지 캐릭터들은 시그니처 면을 띄우지 못했을 때 (A캐..

카테고리 없음 2025.07.16

[내일배움캠프 68일차] 앞으로 해야할 일

1. 중간발표가 끝났다휴식~은 어림도없지.지금 발등에 불 떨어졌다. 2. 해야하는 일 리스트1. 스킬 데이터를 실제로 집어넣기2. 스킬 구현하기3. 캐릭터 성장용 아이템 데이터 정리하기4. 이 아이템데이터를 상점이나 인벤토리 등에서도 사용할 수 있도록 만들기 3. 주의해야 할 점1. 스킬데이터를 넣을 때, 하드코딩 되지 않도록2. 각 스킬별로 다른 기능(힐, 공격력버프 등)을 할당할 것3. 아이템 데이터들을 관리할 곳을 형성할 것(데이터를 넣고 빼기만 하면 되도록)

Unity_본캠프 2025.07.15

[내일배움캠프 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