FSM (Finited State Machine)
FSM(Finite State Machine)은 우리말로는 유한 상태 기게라고 하며. 이름 그대로 한정된 상태를 가지는 소프트웨어 공학적 모델 중 하나이다.
FSM의 상태는 특정한 대상이 가지거나 행할 수 있는 모습이나 사건들을 말하며 게임으로 예를 들면, 캐릭터에는 각각의 공격, 대기, 이동 등의 모습 등이 있다고 정의를 내린다면 이것들이 각각의 상태라고 할 수 있다.
FSM은 한 번에 하나의 상태만을 가진다. 각 상태에서 어떠한 사건에 의해서 다른 상태로 변화할 수 있는데, 이를 전이라고 한다.
FSM의 장점
- 한 번에 하나의 상태만을 가지는 성질때문에 전이 시점이 명확하다.
- 상태를 외부에서도 조정할 수 있기 때문에 디버깅 등에서 파악이 쉽다.
FSM의 단점
- 상태가 많아지게 되면 상태를 관리해주는 코드가 복잡해질 수 있다.
- 복잡한 AI 를 구성하는데에 한계가 있다.
유니티에서는 Animator에서 FSM을 직접적으로 확인할 수 있다.
'CS' 카테고리의 다른 글
CBD(Component Based Developing) (0) | 2024.05.04 |
---|---|
오토마타 (0) | 2024.05.02 |
직렬화(Serialization) (0) | 2024.04.29 |
키프레임 애니메이션 (0) | 2024.04.25 |
메모리 계층 구조 (0) | 2024.04.24 |