2024. 8. 14. 22:58ㆍ나의 개발자 기록/본 캠프 개발 일지
2024년 8월 14일 수요일
What I did today : What I did today : 로그아웃 버튼 만들기 + 브로셔 작성 및 꾸미기
오늘 오전에는 메인 씬에 있는 설정 창에 로그 아웃 버튼 + 게임 종료 버튼을 만들어봤습니다. 게임 종료는 매번 사용하던 로직에 저장하기랑 같이 넣어서 만들어 놨고, 로그아웃은 Authentication 서비스에 있는 로그아웃 함수를 사용하여 구현하였습니다.
로그아웃하고 나서 다시 인트로 씬으로 이동하면 LoginManager가 2개가 되는 현상이 발생했고, 이걸 해결하기 위해서 기존의 제네릭 싱글톤 로직에 중복 로직을 해결하는 것을 넣어봤지만, 씬 이동을 하여 참조를 잃은 녀석이 파괴되지 않아서 재로그인이 안 되는 문제가 생겼습니다. 그래서 기존 파괴 로직을 약간 변경해서 테스트해봤더니 문제가 해결되어 재로그인이 가능하게 되었습니다.
그다음에는 사운드가 0일 때, 소리가 나오는 문제가 있었습니다. 이거는 각 볼륨을 설정할 때 "Mathf.Log10(volume) * 20"을 사용하는데, 이 계산은 로그 스케일로 볼륨을 조절하므로 슬라이더 값이 0이 되면 로그 연산에서 '-Infinity'가 발생하게되어 음소거가 되지 않았던 것이고, 해결하기 위해서는 해당 볼륨이 0.0001보다 작아지면 -80 값을 주어서 문제를 해결했습니다.
오후에는 튜터님과 QA를 진행해야돼서 남은 시간에 팀원분이 캐릭터들을 직군별로 나열한 이미지가 필요하다 하셔서 만들어 드렸고, 저는 각 스테이지 별로 맞는 배경음악을 찾아서 GitHub에 파일을 올려두었습니다.
약 3시 쯤에 튜터님과 QA를 진행하려고 빌드를 해보는데, 빌드가 되지 않는 문제가 있었고, 튜터님께서 확인해 보신 결과 Editor들이 Editor 파일에 안 들어가 있으면 빌드에서 오류가 날 수 있다고 말씀해 주셨고, 해당 파일들을 정리하니 빌드가 정상적으로 잘 되었습니다. 그리고 튜터님과 함께 테스트를 하면서 여러 가지 버그와 오류들을 체크해 주셨고, 직접 어떻게 고치는지 자세히 알려주셨습니다. 대충 테스트가 끝나고 저희들은 각자 역할 분담을 맡아서 다른 팀원분들은 오류를 고치는데 힘을 쓰셨고, 저는 내일까지 작성해야하는 최종 프로젝트 브로셔 작성을 시작했습니다.
브로셔 예시와 중간 발표 때 만들었던 Read Me를 바탕으로 내용을 써 내려갔고, 새롭게 추가된 기술 내용들을 자세히 적고, 미소녀 캐릭터 게임이다 보니 애니 캐릭터 소개 프로필처럼 포토샵으로 간단한 캐릭터 소개 프로필을 만들어서 브로셔에 올려두었습니다. 다들 퇴실 시간이 넘었지만, 내일 쉬는 날이기도 하고, 오늘 안에 유저 테스트를 시작한다는 마인드 하나로 계속해서 작업을 진행했습니다. 저도 브로셔 작업을 마지막까지 하고, 12시가 되기 전에 TIL을 쓰면서 마무리 작업을 확인하고, 오늘 하루를 마무리했습니다.
면접 질문 대비 : 오브젝트 풀을 사용하면 메모리 관리에 도움이 되는 이유가 무엇일까요?
오브젝트 풀은 객체를 미리 생성해 두고, 재사용 가능한 객체를 관리하는 디자인 패턴입니다. 오브젝트 풀을 사용하면 객체를 반복적으로 생성하고 소멸시키는 오버헤드를 줄여 성능을 향상시킬 수 있습니다. 특히, 대량의 객체가 짧은 시간 동안 필요할 때 유용합니다.
1. 메모리 할당 감소 : 새로운 객체를 생성하는 대신, 기존의 객체를 재사용하여 메모리 할당과 해제 빈도를 줄입니다.
2. 성능 향상 : 객체 생성과 소멸의 비용을 줄여 애플리케이션의 성능을 향상합니다.
3. 일관된 메모리 사용 : 객체 수를 제한하여 예측 가능한 메모리 사용량을 유지할 수 있습니다.
'나의 개발자 기록 > 본 캠프 개발 일지' 카테고리의 다른 글
2024년 8월 19일 월요일 개발일지 / 시연 영상을 찍기 위한 마지막 버그 및 오류 수정하기 (0) | 2024.08.19 |
---|---|
2024년 8월 16일 금요일 개발일지 / 유저 테스트 후, 게임 개선하기 (0) | 2024.08.16 |
2024년 8월 13일 화요일 개발일지 / 다양한 버그 및 오류 해결하기 (0) | 2024.08.13 |
2024년 8월 12일 월요일 개발일지 / 몬스터 만들기 + 데이터 저장 및 불러오기 (0) | 2024.08.12 |
2024년 8월 09일 금요일 개발일지 / 사운드 적용하기 + UI 디자인 (0) | 2024.08.09 |