폭풍같았던 한 주가 지나갔다. 배운 것도 정말 많았지만 내 생각보다 시간이 더 부족했었다.
결국 미완성인 체로 제출을 하게 됐는데, 나중에 짬 날때 완성을 해야봐야겠다.
Generic
을 이용해 callback들을 관리하는 Dictionary
를 가진 FSM
을 작성했는데, Generic
과 Dictionary
조합의 아름다움(?)을 느낄 수 있었다.FSM
의 각 상태를 class가 아닌, callback을 등록해서 호출하는 방식으로 구현하는 방법이 좋은 방법인지는 고민해봐야 할 문제 같다.Coroutine
을 사용했다.DungeonGenerator
클래스에 IsDone
이란 bool 프로퍼티를 추가하고, 던전 생성이 끝나면 프로퍼티를 true로 바꿔주게 했다.NavmeshGenerator
클래스에선 Coroutine
의 WaitWhile
을 이용해 DungeonGenerator
의 IsDone
이 true가 될 때까지 기다린 다음, Navmesh를 생성하게 했다.ResourceManager
와 NavmeshGenerator
등등 비동기 생성 시 반환되는 AsyncOperator
의 Complete
callback을 이용해 데이터 로드, 객체 초기화, 인스턴스 생성과 같은 작업들의 순서를 체계적으로 설계할 수 있게 됐다.