게임 플레이 구조도 - UML 다이어그램

devKyoun·2025년 1월 16일
0

Unity

목록 보기
26/27

구조도를 만들면서 파악하는 게임 시스템

해당 구조도를 만들기 위해 UML 다이어그램 강의 영상들을 보고 각 클래스간에 관계가 어떻게 되는지 Draw.io 를 통해 만들어 보았다.

이 구조도를 만들면서 느낀 점 하나가 강하게 들었다.
게임 내 클래스간의 결합이 얼마나 됐는가, 어떠한 것이 독립적이지 못한 클래스인가를 파악하기 쉽다는 것이다.

사실 이 구조도 전에 많은 작업물이 있었는데, 할때 마다 클래스를 수정해주며 결합도를 해결하고 나서야 만들어진 결과물이다.


게임 씬을 관리하는 구조도

해당 부분은 싱글톤 패턴으로 해결했다.

게임 시작, 그리고 게임 오버시 결과물을 Data Manager를 통해 저장을 하고 다시 Main Scene을 로드, 업그레이드시 Data Manager에 접근

그리고 이 모든 작업을 할때 필요한 UI를 UI Manager를 통해 관리를 해줬다.

인게임에서 게임 플레이 도중엔 어떠한 싱글톤에도 접근하지 않는 구조이다.
다만 게임 플레이를 시작을 했을때 처음 한번 접근 할 필요가 있다.
업데이트 된 Data를 가져와야만 하고, UI를 세팅 해줘야한다.


VanController를 중점으로 돌아가는 게임 플레이 구조도

Van의 특성을 생각을 했고 이를 PlainClass로 나누어 주었다.
각 클래스와 Van Controller의 관계를 살펴보고 정보처리기사 UML 다이어그램 방식을 참고하여 만들어냈다.

그 외에 옵저버 패턴으로 VanController에 접근을 하고 또한 장애물과 충돌 시에 VanController에 잠깐 접근하는 구조이다.

각 서로의 의존도를 해결하다가 마지막은 VanController 자체에 의존을 너무하게 되는 구조임을 알 수 있었다.

해당 부분을 해결해보려고 노력하는 것이 차후의 과제라고 생각한다.

profile
Game Developer

0개의 댓글