FSM

남생이야·2024년 4월 30일

FSM (Finite State Machine)

FSM(Finite State Machine)은 우리말로는 유한 상태 기게라고 하며. 이름 그대로 한정된 상태를 가지는 소프트웨어 공학적 모델 중 하나이다.

FSM의 상태는 특정한 대상이 가지거나 행할 수 있는 모습이나 사건들을 말하며 게임으로 예를 들면, 캐릭터에는 각각의 공격, 대기, 이동 등의 모습 등이 있다고 정의를 내린다면 이것들이 각각의 상태라고 할 수 있다.

FSM은 한 번에 하나의 상태만을 가진다. 각 상태에서 어떠한 사건에 의해서 다른 상태로 변화할 수 있는데, 이를 전이라고 한다.

FSM의 장점

  • 한 번에 하나의 상태만을 가지는 성질때문에 전이 시점이 명확하다.
  • 상태를 외부에서도 조정할 수 있기 때문에 디버깅 등에서 파악이 쉽다.

FSM의 단점

  • 상태가 많아지게 되면 상태를 관리해주는 코드가 복잡해질 수 있다.
  • 복잡한 AI 를 구성하는데에 한계가 있다.

유니티에서는 Animator에서 FSM을 직접적으로 확인할 수 있다.


각 애니메이션은 하나의 상태로 취급하여 애니메이션 별 전이 조건을 설정하여 여러 상태별 애니메이션을 실행할 수 있다.

0개의 댓글