포즈 캐싱

컨트롤 릭 그래프에서 본 포즈와 스테이트를 레퍼런스에 저장합니다.

Choose your operating system:

Windows

macOS

Linux

컨트롤 릭의 포즈 캐싱 기능은 애니메이션 포즈를 컨트롤 릭 그래프에서 서로 다른 시기에 저장 및 적용하는 데 사용됩니다. 모든 릭 엘리먼트 는 포즈로 캐시될 수 있으며 릭 그래프 내에서 커브 값 또는 트랜스폼 등 여러 프로퍼티에 액세스할 수 있습니다.

이 문서에서는 포즈 캐싱 기능에 대한 개요와 더불어 포즈를 저장 및 적용하는 방법을 살펴봅니다.

전제조건

  • 캐릭터에 대한 컨트롤 릭 에셋을 생성한 상태여야 합니다. 생성 방법에 대한 정보는 컨트롤 릭 퀵스타트 페이지를 참조하세요.

퀵스타트

다음은 포즈를 저장하고 얻는 방법에 대한 간단한 가이드입니다.

포즈 저장하기

포즈는 컨트롤 릭의 내 블루프린트(My Blueprint) 패널 내에 변수로 저장됩니다. 새 포즈 변수를 생성하려면 변수(Variables) 카테고리에서 추가(+) 버튼을 클릭하고 변수 타입을 릭 포즈(Rig Pose) 로 설정합니다.

릭 포즈 변수

다음으로, 릭 그래프로 변수를 드래그하고 Set 을 선택하여 그래프 내에서 변수를 Set 연산으로 레퍼런스합니다.

릭 포즈 레퍼런스

그런 다음 그래프를 우클릭하고 Get Pose Cache 를 선택하여 Get Pose Cache 노드를 생성합니다. 포즈(Pose)값(Value) 핀을 연결합니다.

get pose cache

마지막으로, Set 노드를 이벤트에 연결합니다. 이 예시에서는 캐릭터의 초기 A 포즈를 저장할 설정 이벤트 에 연결할 수 있습니다.

컨트롤 릭 포즈 저장

포즈 적용하기

포즈는 Apply Pose Cache 노드를 사용하여 적용되며, 이 노드는 릭 포즈 변수에서 포즈를 읽어 옵니다.

우선, 변수를 그래프로 드래그하고 Get 을 선택하여 그래프 내에서 릭 포즈 변수를 Get 연산으로 레퍼런스합니다.

릭 포즈 레퍼런스

그런 다음 그래프를 우클릭하고 Apply Pose Cache 를 선택하여 Apply Pose Cache 노드를 생성합니다. 포즈(Pose)값(Value) 핀을 연결합니다. 정방향 솔브 이벤트처럼 평가를 프리뷰할 수 있도록 이벤트에도 연결합니다.

포즈 캐시 적용

전체 포즈를 적용하는 것이므로 가중치(Weight) 값을 편집하여 포즈 이펙트를 프리뷰할 수 있습니다. 이 예시에서는 프리뷰 씬 세팅 에서 프리뷰 컨트롤러를 사용하여 포즈 적용을 더 잘 확인할 수도 있습니다.

포즈 적용

포즈 캐시 노드

컨트롤 릭 그래프에서 사용할 수 있는 포즈 캐시 노드는 다음과 같습니다.

이름

이미지

설명

Apply Pose Cache

Apply Pose Cache

저장된 포즈를 적용합니다. 릭 엘리먼트 설정, 트랜스폼 스페이스, 설정할 항목, 가중치 등의 프로퍼티를 포함합니다.

For Each Pose Cache Element

For Each Pose Cache Element

이 노드는 주어진 포즈의 모든 항목에서 반복적으로 실행됩니다.

Get Pose Cache

Get Pose Cache

구할 항목(Items to Get) 의 입력 및 릭 엘리먼트 타입을 바탕으로 포즈를 저장합니다. 지정된 항목이 없는 경우 모든 항목이 사용됩니다.

Get Pose Cache Curve

Get Pose Cache Curve

저장된 포즈에서 단일 애니메이션 커브 를 구합니다.

Get Pose Cache Delta

Get Pose Cache Delta

두 포즈를 비교하고 비교 확인 Boolean을 출력합니다.

Get Pose Cache Items

Get Pose Cache Items

항목 배열에서 릭 엘리먼트를 반환합니다.

Get Pose Cache Transform

Get Pose Cache Transform

포즈의 단일 릭 엘리먼트에서 트랜스폼 또는 애니메이션 커브 값을 구합니다.

Get Pose Cache Transform Array

Get Pose Cache Transform Array

포즈에서 모든 항목의 트랜스폼을 구하고 트랜스폼 배열로 반환합니다.

Is Pose Cache Empty

Is Pose Cache Empty

포즈가 비었는지 여부를 확인합니다.

Draw Pose Cache

Draw Pose Cache

뷰포트에 저장된 포즈에 축 디버그 정보를 드로합니다. 포즈에 저장된 엘리먼트만 드로합니다.

포즈 캐시 드로

포즈 캐싱과 관련된 노드 대부분은 다음과 같은 공통 프로퍼티를 포함합니다.

포즈 캐시 적용

이름

설명

엘리먼트 타입(Element Type)

포즈 저장 시 필터링할 릭 엘리먼트입니다. 다음 엘리먼트 중에서 선택할 수 있습니다.

  • 본(Bones)

  • Null

  • 컨트롤(Controls)

  • 커브(Curves)

  • 모두(All)

스페이스(Space)

포즈 정보가 저장 및 적용되어야 하는 트랜스폼 스페이스입니다. 로컬(Local) 또는 글로벌(Global) 스페이스 중 하나입니다.

설정할 항목(Items to Set)

포즈 저장 시 포함할 릭 엘리먼트 배열입니다. 이 프로퍼티를 설정하지 않으면 지정된 엘리먼트 타입(Element Type) 에 따라 모든 엘리먼트가 포함됩니다.

워크플로 예시

Get Children 같은 배열 빌드 노드를 사용하여 포즈로 저장할 릭 엘리먼트의 서브섹션만 구할 수 있습니다. 이는 특정 엘리먼트에 대해서만 포즈를 저장하고 적용하고자 할 때 유용합니다.

포즈 부분 적용

Branch 같은 실행 노드를 사용하여 특정 시간 또는 상태의 포즈를 저장할 수 있습니다.

브랜치 포즈 설정