유한 상태 머신이란?
![](https://blog.kakaocdn.net/dn/b8cAlx/btsxq4CHqpp/snofhrn355eLqlRztIuXE0/img.png)
- Idle, Move, Attack 등등의 상태에서 상태로 조건에 따라 전환되며 동작되는 장치의 모델
![](https://blog.kakaocdn.net/dn/AoBtO/btsxgXdGUw2/UH7gPPojbn2xVCZjC0KNnK/img.png)
- Idle 상태 (멍 때리는 동작) → 조건(밥) 충족 → Happy 상태 (웃는 동작, 춤추는 동작)
- 유한 상태 머신 : 상태 + 조건 + 동작
싸이코패스마냥행복한 상태와 정적인 상태 또는 행복한 상태와 화난 상태가 동시적이지 못하는 것처럼, 순간마다 상태는 한번에 하나만 진행된다.
![](https://blog.kakaocdn.net/dn/cMXyNb/btsxqsqgOxv/MMhMxIeQRaGIunicamNnw0/img.png)
예시
예시 - Enemy
![](https://blog.kakaocdn.net/dn/pFQUo/btsxg0nXLv8/eZ3yTHDmTdnGrReCFiIvo1/img.png)
- 였던 적의 감지범위에
![](https://blog.kakaocdn.net/dn/WcczC/btsxtVLKwlF/uNmWLEv9DWG5F2jJn2OVF1/img.png)
- 플레이어가 들어오게 된다면
-
![](https://blog.kakaocdn.net/dn/HkUlf/btsxkCz7Y05/ZKCSp0hrwS4mtOi5Hjlzx1/img.png)
- enemy가
예시 - Player
![](https://blog.kakaocdn.net/dn/RlnEl/btsxriU7bCU/ZZwe8MskzNZPnuQvdOjvRK/img.png)
- 상태(State) : 정지해 있는 상태, 움직이고 있는 상태, 점프하고 있는 상태
- ? 움직이는 동작, 점프하는 동작이니까 액션 아니야?
- “~하고 있는” 이라는 워딩을 사용하며 곧 다른 진행 중임을 표시하고 있음
- 점프 하고 있는 상태일 때 점프 처리 하는 등의 방식
- ? 움직이는 동작, 점프하는 동작이니까 액션 아니야?
- 조건(Condition) : W,A,S,D / Space 등의 입력
- 혹은 동작 등의 어떤 기준으로부터 흐른 시간일 수도 있음
- 동작(Action) : 이동 애니메이션, 점프처리, 점프 중 이속 저하 등등
![](https://blog.kakaocdn.net/dn/bt6lNE/btsxp2yA0DJ/cVQVgQC5rpbBIkGMNxqgk0/img.png)
- 이 친구도
![](https://blog.kakaocdn.net/dn/bIUgmb/btsxtoAv3uZ/1UjoVFKTSWffTiI5YdCxwk/img.png)
- 이
샊친구도
- 최신형 인공지능이 탑재되어 알아서 판단하고 행동하는 것처럼 보이지만
- 하지만 까고 보면 결국 이 FSM 머신이라는 약속된 패턴에 의해 작동하는 것일 뿐.
장점
Reference
내일배움캠프
국비지원 코딩, 내일배움캠프는 개발자 취업까지 자신 있습니다. 기간 제한 없는 취업 컨설팅을 받으며 비전공자 IT취업 준비, 확실히 끝내세요.
![](https://nbcamp.spartacodingclub.kr/favicon.png)
![](https://static.spartacodingclub.kr/nbcamp/newOgImg.png)
FSM Finite State Machine의 이해
해당 포스팅은 예전에 제가 Embedeed System Computing 과목을 수강받을 때 제가 공부하면서 포스팅을 ...
![](https://m.blog.naver.com/blog_192x192.png)
Uploaded by N2T