TIL

25.02.26 TIL

gaon99 2025. 2. 26. 21:16

부트캠프 25일차

 

1. 오늘 학습 키워드

 

리팩토링, HP UI 제작, Find 및 GetComponent


2. 오늘 학습 한 내용을 나만의 언어로 정리하기

 

어제 제작했던 HP 이미지를 제작했으나, HP를 나는 시간에 따라 줄어드는 것으로 인지했는데,

충돌시에 감소 되는 것이였어서, 내가 제작한것은 지우고

새로운 이미지를 제작했다.

 

해골 이미지를 하나 뽑아서 체력 감소시에 해골 이미지 하나가 지워지고,

총 3개의 해골이 전부 지워지면 게임오버가 되는 그런 로직으로 제작했다.

 

이를 UIManager에서 담당하려고 했으나

UIManager가 책임하는 것이 너무 많은것같아서,

체력을 관리하는 HPManager를 제작해서 따로 뺐고, 버튼 초기화도 담당했으나, 이 부분도 button에 옮겨 작성했다.

 

이제 담당하는 부분은 스코어를 계산하는 로직과 이를 초기화 할 수있도록 PlayerPrefs.Get 메서드 정도만 남겨뒀다.

 

내가 제작하고 담당한 스크립트가 HP 관련, UI, Button 정도인데

아직 숙련자가 보기엔 이걸 리팩토링이라고 해놓았냐 라고 할 정도로 미숙하겠지만..

 

TextRPG를 개인 과제로 받아 첫 프로젝트를 했을땐

Class는 나누었으나, Program.cs에 다 몰아넣었으니 이정도면 많이 변했다고 할..수 있겠다..

 

여기까지가 팀프로젝트 오늘 제작한 내용이고

 

다른 하나는 강의때, Find와 GetComponent를 통해 Unity에서 할당시켜주지 않아도 알아서

인스펙터창에 해당 객체가 들어가는 것에 대해서 경험할 수 있었다.

 

이 부분이 내가 너무 부족하기도 했기에, 구글링하며 예시 찾고, 어떻게 사용되는지 gpt한테 물어보면서

바위에 계란을 열심히 던졌더니, 

 

원래 팀프로젝트 버튼이 내가 onClick부터 버튼 객체까지, 내가 인스펙터 창에 넣어주었지만

오늘 작업을 통해서 Unity에 추가 설정 없이 코드만으로 버튼이 알아서 할당되도록 만들었다.

 

그래서 이 경험을 토대로 HP도 비슷하게 제작하고싶었지만

프리팹은 Find가 안먹힌다고 한다.

그래서.. 뭐 Serialize로 내가 할당해줬다..

 

아! 마지막으로 gpt한테 이미지를 독촉해내서, 이미지 작업도 끝내놓았다.


3. 학습하며 겪었던 문제점 & 에러

 

에러?는 NullExceptionError가 좀 심했는데

얜 하도 많이보니 친구수준이라,, 잘 할당해주었더니 딱히 문제는 안됐다.

 

그리고 로비에 내가 역대 1,2,3등 기록을 같이 두었는데 이가 0으로 고정이 되었는데

이는 currentscore가 null이라, 로직이 안도는거 같았다.

그래서 GameManager를 통해 점수를 관리하기에, 거기서 뽑아왔다.


4. 내일 학습 할 것은 무엇인지

내일 일단 내가 작성한 부분에 주석을 좀 달고, 코드에 대한 설명을 좀 작성해서 발표자분에게 드려야하고

트러블 슈팅도 함께 드릴 예정이다.