게임 장르
- 게임 장르: 3D ARPG
- 플랫폼: Window(PC)
- 개발 엔진: UNITY
- 엔진 버전: 2022.3.16f1
- 프로젝트: Unity3D URP
- 해상도: 1920 x 1080
FSM 설계
- 플레이 도중 무기 스왑이 가능하도록 만들 것이다.
- 이를 위해 무기 별로 fsm을 설계하고 각 무기마다 조건을 두어 스왑이 가능하도록 할 것이다.
unarmed fsm

근거리 fsm

- 근거리의 경우 상태가 동일하므로 근거리 fsm을 설계하고 animation override를 활용할 예정이다.
원거리 fsm

animation layer
- 근거리 무기의 Defense, 원거리 무기의 Aiming, WeaponSwitch 상태는 아래 gif처럼 플레이어가 걷기(Walk)를 하면서 상시로 움직일 수 있어야 한다고 생각했다.
엘든링 플레이 화면
- 이를 구현하기 위해, 상체 애니메이션을 일부 분리하여 계층을 두기로 하였다.
- 그를 위해 animation layer를 사용할 것이다. (참고 자료: Animation Layer|Unity manual)
Upper body fsm

- base layer와 분리하여 upper body layer를 따로 fsm을 구상하였다.
- 상시적으로 해당 조건에 부합하면 전환될 수 있도록 구상하였다.
- upper body layer의 행동을 하다가도 Base layer에서 Jump, Damaged, Dodge 상태로 들어가면 upper body에서 하던 행동을 중지하고 base layer의 행동하도록 구현해야 함을 주의해야 한다.
sub state machine
- movement
- jump
- damaged
- attack
- defense