[파키쿵!] 개발 일지 1
[파키쿵!] 개발 일지 - 1
기간 : 2025.05.03 - 2025.05.09
진행 상황 : 적AI 상태머신 구현
적 AI를 담당하게 되었다. 프로젝트에서 본격적으로 몬스터 구조를 설계해본건 이번이 처음이다.
아직 기획이 확정된것이 아니라 몬스터가 얼마나 확장될지 알 수 없었다. 설계를 고민하며 초반부터 확장성을 고려해야 하지만 너무 오버해서 복잡하게 만드는것도 걱정스러웠다.
스테이트 머신을 직접 구현하는 방식으로 해보자고 결정했다. 스테이트 머신은 주로 애니메이션을 할 때 사용했지 직접 구현해서 캐릭터 로직에 사용하는것은 처음이다. 플러그인을 사용할까도 생각해 봤지만 그거야 말로 너무 오바하는것 같았고 직접 만들어보고 싶은 생각도 들었다.
초반에는 추상 클래스, 인터페이스를 만들어 ‘상태’들을 설계했는데 만들다 보니 점점 복잡해져서 차라리 단순하게 하자는 생각이 들었다. 그래서 인터페이스를 삭제하고 그 기능을 추상 클래스로 이전했다. (상태 진입, 실행, 빠져나오는 함수들)
구현외적으로는 프로젝트 초반이다 보니 코드 컨벤션이나 여러 규칙들을 정했는데 일단 틀을 만들어두고 팀원들 코드를 보면서 조금씩 수정해 나가기로 했다.
ps. 그리고 FSM 구현이 거의 완료된 시점에서 유니티6부터 비헤이비어트리가 빌트인 기능으로 추가된것을 알았다.. 만약 인공지능이 복잡해진다면 향후 이 방식으로 교체를 고려해봐야겠다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.