250111

lililllilillll·2025년 1월 10일

개발 일지

목록 보기
48/350

🎮 Random Study


FSM (Finite State Machine) for animation

https://www.youtube.com/watch?v=Vt8aZDPzRjI

State에 대한 추상 클래스를 만든다.
StateManager에서 instance로 만들어줄거니까 MonoBehaviour 상속은 지운다.

추상 클래스를 상속받는 상태 클래스 스크립트들을 만든다

StateManager의 모습은 다음과 같다.

각 상태에 대한 인스턴스를 갖고,
해당 인스턴스의 EnterState()나 UpdateState()를 호출하여 상태를 관리한다.
각 상태에서 전환 조건이 발생하면 호출할 SwitchState()도 public으로 만들어준다.
다른 인스턴스들을 참조해야하니 객체들도 public으로 만들어준다.

종료 조건이 발생할 때 SwitchState()를 호출하는 예시

OncollisionEnter같은 정보를 전달하기 위해 State에도 같은 이름의 함수를 만들고, 호출해준다.

이름만 같은거고, Monobehaviour에서 일어나는 충돌 이벤트 감지같은 건 일어나지 않으니
충돌 시의 로직만 짜주면 된다.

How to make 2d game animations

https://www.youtube.com/watch?v=EmbA-AitPow

레이어 나눠서 그린다
레이어별로 나눠진 몸 부품들을 한 장에 다 담는다
유니티로 임포트해서 auto slice 하고 피벗 맞춰준다
게임 오브젝트들의 렌더링 순서 정렬하고 head나 body같은 부모로 묶어준다
Animation 생성하고 녹화 버튼 누른 후에 키프레임에 해당하는 rotation이나 position 값 준다

idle 애니메이션 같은 거 만들 때 첫 프레임하고 마지막 프레임이 같아야 자연스러우니 키프레임 복사해서 마지막에 붙여넣기



profile
너 정말 **핵심**을 찔렀어

0개의 댓글