애님 그래프의 기본 구성
애님 그래프는 애니메이션 블루프린트의 핵심 요소로, 캐릭터의 애니메이션 로직을 시각적으로 구성할 수 있게 해줍니다.
이를 통해 복잡한 애니메이션 시스템을 직관적으로 설계하고 관리할 수 있습니다.
애님 그래프의 기본 구조
애님 그래프는 크게 세 부분으로 구성됩니다.
- 이벤트 그래프 : 애니메이션 로직을 제어하는 스크립트
- 애님 그래프 : 실제 애니메이션 블렌딩과 전환을 담당
- 결과 포즈 : 최종적으로 캐릭터에 적용될 애니메이션 포즈
주요 노드 유형
1. 포즈 블렌딩 노드
- 여러 애니메이션을 혼합하여 부드러운 전환 구현
- 예 : Blend Poses by Bool, Blend Poses by Int
2. 스테이트 머신
- 복잡한 애니메이션 상태와 전환을 관리
- 예 : 대기, 걷기, 달리기 상태 간 전환
3. 시퀀스 플레이어
- 개별 애니메이션 시퀀스를 재생
- 예 : Play Sequence 노드
4. 레이어드 블렌드 퍼 본
- 신체 부위별로 다른 애니메이션 적용
- 예 : 상체는 공격 동작, 하체는 이동 동작
애님 그래프 작성 방법
- 애니메이션 블루프린트 생성
- 애님 그래프 탭으로 이동
- 최종 애니메이션 포즈 노드에 연결될 노드 체인 구성
예시 : 걷기/달리기 블렌드
애니메이션 시퀀스 연결
- 콘텐츠 브라우저에서 애니메이션 시퀀스를 애님 그래프로 드래그
- 생성된 시퀀스 플레이어 노드를 다른 노드와 연결
예시 : 점프 애니메이션 추가
애님 그래프에서의 변수 사용
- 애니메이션 블루프린트의 변수 섹션에서 변수 생성
- 애님 그래프에서 변수 노드로 드래그하여 사용
예시 : 이동 속도에 따른 애니메이션 블렌드
이벤트 그래프와의 상호작용
이벤트 그래프에서 애님 그래프에 사용될 변수를 업데이트합니다.
예시 : 캐릭터 상태 업데이트
디버깅 기법
1. 프리뷰 창 활용
- 애님 그래프 실행 결과를 실시간으로 확인
2. 포즈 모니터
- 특정 본의 회전, 위치 등을 모니터링
3. 변수 워치
- 주요 변수 값의 변화를 실시간으로 추적
4. 브레이크포인트 설정
- 특정 조건에서 실행을 일시 중지하고 상태 검사
효과적인 애님 그래프 구성을 위한 팁
1. 모듈화
- 복잡한 로직을 서브 애님 그래프로 분리하여 관리
2. 명확한 명명 규칙
- 노드와 변수에 의미 있는 이름 부여
3. 주석 활용
- 복잡한 로직에 대한 설명을 주석으로 추가
4. 성능 고려
- 불필요한 연산을 최소화하고 캐싱 활용
5. 계층 구조 활용
- 레이어드 블렌드를 사용하여 신체 부위별 애니메이션 제어
주의사항
1. 순환 참조 방지
- 노드 간 순환 참조로 인한 무한 루프 주의
2. 과도한 복잡성 회피
- 필요 이상으로 복잡한 그래프는 유지보수 어려움
3. 성능 모니터링
- 복잡한 블렌딩이 성능에 미치는 영향 주시
4. 버전 관리
- 주요 변경사항에 대한 백업 및 버전 관리 필수
예제 : 종합적인 캐릭터 애니메이션 시스템
이 예제는 하체의 이동 상태와 상체의 액션을 독립적으로 제어하면서도 전체적으로 조화로운 애니메이션을 만들어냅니다.
레이어드 블렌드를 통해 상/하체를 분리하고 스테이트 머신과 블렌드 스페이스를 조합하여 다양한 상황에 대응할 수 있는 유연한 시스템을 구성합니다.