유한 상태 머신(FSM)

최장범·2023년 10월 5일
0

TIL

목록 보기
39/50

유한 상태 머신 (FSM)

  • Finite State Machine
  • 유한 상태 기계를 나타내는 디자인 패턴
  • 상태와 상태 간의 전환을 기반으로 동작하는 동작 기반 시스템

구성요소

  • 상태 (State) = 시스템이 취할 수 있는 다양한 상태를 나타냄
  • 전환 조건 (Transition Condition) = 상태 간 전환을 결정하는 조건
  • 동작(ACtion) = 상태에 따라 수행되는 동작 또는 로직

동작원리

  • 초기 상태에서 시작하여 입력 또는 조건에 따라 상태 전환을 수행합니다.
  • 상태 전환은 전환 조건을 충족할 때 발생하며, 전환 조건은 입력, 시간, 조건 등으로 결정됩니다.
  • 상태 전환 시 이전 상태의 종료 동작과 새로운 상태의 진입 동작이 수행됩니다.

장점

  • 명확하게 상태를 정의, 상태간 전환을 일관되게 관리 가능
  • 코드 유지 보수가 용이함
  • 다양한 동작을 유기적으로 조합하여 원하는 동작 구현 가능

예시

  • 플레이어 상태 관리
    -상태: 정지 상태, 이동 상태, 점프 상태
    -전환 조건: 이동 입력, 점프 입력, 충돌 등의 조건
    -동작: 이동 애니메이션 재생, 점프 처리, 이동 속도 조정 등

0개의 댓글