게임 장르

  • 게임 장르: 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
profile
NEWB!

0개의 댓글