팀 프로젝트 시작 전 구조 설계가 탄탄히 잡혀있다면 확장하기도 편하고
좀더 빠르고 체계적으로 할 수 있지않을까? 라는 생각으로 구조 설계를 하게되었다.
전체적으로 코드의 재사용을 줄이는 것과 확장성을 고려하는 것이다.
✧ 플레이어
- Player의 FSM구조 설계
- 플레이어의 데이터를 저장하고 불러오도록 설계 및 맵 저장 고려
- 플레이어의 상호작용이 자연스럽게 설계
✧ 기믹
- 기믹을 interface를 활용해 확장이 쉽도록 설계
✧ 적
- 적이 어떻게 스폰될 것이지 (비동기) 설계
- 적의 경우 날아다니는 적, 땅에서 다니는 적 등을 분리 후 상속받아 사용하여 빠른 구현이 가능하도록 설계
✧ 인벤토리 및 아이템
- 인벤토리의 유무와 있다면 인벤토리 설계
- 열쇠, 음식, 장비 등 아이템을 타입에 따라 분리하도록 설계
✧ 스텟
- 스텟이 아이템으로 인해 증가, 감소 또는 버프로 인한 증가, 감소가 혼동없이
잘 이루어질 수 있도록 설계
✧ UI
- UI와 게임로직을 최대한 분리하도록 설계
✧ 고민
- 최적화가 필요하다면 어느 부분에서 필요할지 고민
- 적의 AI에 대한 고민 ( FSM BT 중 고민하기 )
지금 생각나는 것은 이정도이다.
아직 정해지지 않은 부분도 많고 미숙하지만 설계를 해보는 것이 좋은 경험이라고 생각한다.
팀원들과 함께 1주일에 최소 한번은 꼭 모여서 회의와 정리를 진행할 것이다.
시간이 생길 때마다 계속 제작을 이어나갈 계획이다.
모든 설계가 끝나고 게임제작을 시작하는 것은 아마 4월 초 혹은 중순쯤이 될 것으로 보인다.