Skip to content

Animator

29thnight edited this page Nov 27, 2025 · 1 revision

Animator

간단 설명: 스켈레톤/애니메이션 클립/여러 컨트롤러/파라미터를 관리하며 본 행렬 계산과 소켓 시스템을 제공하는 컴포넌트.

생명주기 메서드

메서드 설명
Awake() 초기화 작업(컨트롤러 준비 등)
Update(tick) 현재 애니메이션/컨트롤러 업데이트 및 본 행렬 계산
OnDestroy() 파라미터/컨트롤러/소켓 메모리 해제

컨트롤러 관리

메서드 설명
CreateController(name) 새 컨트롤러 생성/등록
CreateController_UI() 에디터 UI용 컨트롤러 생성
CreateController_UINoAni() 애니메이션 비사용 UI 버전 생성
DeleteController(index/name) 컨트롤러 제거
GetController(name) 이름으로 컨트롤러 검색
UsesMultipleControllers() 2개 이상 사용 여부
SerializeControllers(jsonName) 모든 컨트롤러 JSON 직렬화 저장
DeserializeControllers(filename) JSON 로드 후 컨트롤러 복원
SetUseLayer(layerIndex, useLayer) 특정 컨트롤러 레이어 사용 설정
ClearControllersAndParams() 모든 컨트롤러 및 파라미터 초기화

애니메이션 재생/블렌딩

메서드 설명
SetAnimation(index) 애니메이션 인덱스 선택
UpdateAnimation() 시간 진행/블렌딩 처리(메서드 바인딩)
StopAnimation(duration) 일정 시간 재생 정지(타이머 설정)

파라미터 시스템

메서드 설명
AddParameter<T>(name, value, vType) 조건 파라미터 추가(중복 이름 무시)
AddDefaultParameter(vType) 타입 기본값 파라미터 생성
SetParameter<T>(name, value) 파라미터 값 갱신
FindParameter(name) 파라미터 포인터 검색
DeleteParameter(index) 파라미터 제거

소켓 시스템

메서드 설명
MakeSocket(socketName, boneName, object) 본 이름 기준 소켓 생성 후 오브젝트 부착
FindSocket(socketName) 소켓 검색
HasSocket() 하나 이상 소켓 존재 여부
FindBoneRecursive(parent, boneName) 트리에서 본 이름 검색

필드(주요)

필드 설명
m_Skeleton 본/계층 데이터 포인터
m_AnimIndexChosen 선택된 애니메이션 인덱스
m_localTransforms[MAX_BONES] 로컬 본 행렬 캐시
m_FinalTransforms[MAX_BONES] 최종 본 행렬 캐시
m_AnimIndex 현재 재생 애니메이션 인덱스
nextAnimIndex 다음 재생 예정 애니메이션 인덱스
m_Motion 모션 리소스의 FileGuid
m_animationControllers 컨트롤러 공유포인터 목록
Parameters 조건 파라미터 목록(뮤텍스로 보호)
socketvec 소켓 포인터 배열
m_isBlend 블렌딩 진행 여부
정지 관련 m_stopTimer, m_stopDuration

CreatorEngine

API Docs

API Reference
Main
PhysicsSystem
RenderEngine
ScriptBinder
Utility_Framework

etc

Clone this wiki locally