2024. 7. 23. 21:09ㆍ나의 개발자 기록/본 캠프 개발 일지
2024년 7월 23일 화요일
What I did today : 세 번째 캐릭터 만들기 + 투사체 에셋 사용하는 데 있어서 생긴 문제점
오늘 오전에는 세 번째 캐릭터를 제작하기 위해 아직 캐릭터를 만들지 않으셨던 팀원분께 원하시는 스타일과 이름을 전달받았습니다. 엔젤비트의 나카무라 유리의 모티브로 삼아서 스테이블 디퓨전으로 다양한 캐릭터를 뽑았고, 슬랙을 통해서 원하시는 캐릭터로 선정하셨습니다.
그다음에는 뽑은 캐릭터의 일러스트와 아이콘을 바로 만들기 위해서 스테이블 디퓨전으로 여러장 뽑았고, 팀원분이 가장 마음에 드셨던 일러스트 한 장을 골라서 아이콘을 만들었습니다.
점심을 먹은 뒤에는 바로 애니메이션 작업에 들어갔습니다. 기본적인 Idle 상태를 만들고, 이 캐릭터가 AD 딜러인 것과, 모티브가 된 캐릭터가 권총을 사용하기 때문에 권총을 쏘는 듯한 모션을 추가하였습니다. 죽는 모션은 기존에 사용하던 방식과 똑같이 머리색을 기준으로 만들었습니다. 캐릭터를 다 만들고 나서 유니티에 스프라이트 시트로 애니메이션을 만들고, 적용하였습니다.
그다음 작업으로는 현재 투사체의 정보들이 테스트용으로 만든 투사체이기 때문에 저희가 샀던 투사체 에셋을 사용해보는 걸로 작업을 진행했습니다.
일단 에셋에 준비되어 있는 로직중에 제가 필요한 부분과 제가 쓰던 투사체 로직을 합쳐서 만들었습니다. 그렇게 테스트를 해보는데 투사체가 캐릭터에서 나갈 때도 있고, 오브젝트 풀로 생성된 위치에서 나가는 경우도 있었습니다. 분명 초기화 작업이나 디버깅으로 체크를 해봤을 때, 스폰 위치가 잘 들어가지만, 어디선가 생성 위치를 초기화시키는 건지, 오브젝트 풀로 생성된 위치에서 쏘는 경우가 허다했습니다.
혼자 저녁시간에 디버그 체크를 더 해보고 무슨 문제인가 확인을 해보는데... 잘 되지 않아서 팀원분들과 상담을 진행해보기도 하고, GPT 한테도 물어보는데... 원래라면 잘 작동해야하는 거지만, 에셋 방식의 문제인 건지... 캠프가 끝나는 시간 때까지 방법을 찾지 못했습니다. 그래서 일단은 다들 TIL을 쓰면서 내일 아침에 해결해 보자고 하셨고, 저도 TIL을 쓰면서 오늘 하루를 마무리했습니다.
면접 질문 대비 : SOLID 원칙에 대해 설명해주세요.
SOLID 원칙은 객체지향 설계의 다섯 가지 기본 원칙을 의미합니다. 각 원칙은 코드의 유지보수성과 확장성을 높이기 위해 고안되었습니다.
- Single Responsibility Principle (단일 책임 원칙): 클래스는 하나의 책임만 가져야 합니다.
- Open/Closed Principle (개방/폐쇄 원칙): 소프트웨어 개체는 확장에는 열려 있어야 하고, 수정에는 닫혀 있어야 합니다.
- Liskov Substitution Principle (리스코프 치환 원칙): 자식 클래스는 부모 클래스로 대체할 수 있어야 합니다.
- Interface Segregation Principle (인터페이스 분리 원칙): 특정 클라이언트를 위한 인터페이스 여러 개가 범용 인터페이스 하나보다 낫습니다.
- Dependency Inversion Principle (의존성 역전 원칙): 고수준 모듈은 저수준 모듈의 구현에 의존해서는 안 됩니다. 둘 다 추상화에 의존해야 합니다.
면접 질문 대비 : 객체지향 프로그래밍의 속성 중 하나인 다형성과 이를 활용한 설계의 장점에 대해 설명해 주세요.
다형성(Polymorphism)은 동일한 인터페이스나 부모 클래스를 통해 여러 형태의 객체를 처리할 수 있게 하는 객체지향 프로그래밍의 특성입니다. 이는 메서드 오버라이딩(Overriding)과 인터페이스 구현을 통해 달성됩니다. 다형성을 활용하면 코드의 유연성과 확장성이 증가하고, 동일한 코드를 재사용하여 다양한 객체를 처리할 수 있어 유지보수성이 향상됩니다.
'나의 개발자 기록 > 본 캠프 개발 일지' 카테고리의 다른 글
2024년 7월 25일 목요일 개발일지 / 네 번째 캐릭터와 중간발표 (0) | 2024.07.25 |
---|---|
2024년 7월 24일 수요일 개발일지 / 투사체 오류 해결 및 중간 발표 대비 (0) | 2024.07.24 |
2024년 7월 22일 월요일 개발일지 / 슬라임 몬스터 만들기 (1) | 2024.07.22 |
2024년 7월 19일 금요일 개발일지 / 두 번째 캐릭터 애니메이션 작업하기 (1) | 2024.07.19 |
2024년 7월 18일 목요일 개발일지 / 캐릭터 일러스트 뽑기 (0) | 2024.07.18 |