5.4

하나의 애니메이션 몽타주에 많은 수의 애니메이션을 넣을 때 리소스 제약이 있나요? 하나의 몽타주에 수십 개 또는 100개 이상의 애니메이션을 넣을 생각입니다. 각 애니메이션에 고유한 세그먼트를 포함하거나 여러 세그먼트로 나누어 넣을 수도 있습니다. 이렇게 하면 런타임에 원하는 순서대로 애니메이션 사이를 이동할 수 있습니다.

몽타주가 현재 재생 중인 세그먼트에만 리소스를 소비하는지 아니면 몽타주 내의 다른 많은 애니메이션으로 인해 메모리를 낭비하거나 문제를 일으키는지 알고 싶습니다. 이런 일을 해본 적이 있나요?

이론적으로는 작동하지만 실제로는 애니메이션 클립 수가 증가함에 따라 관리가 불가능해질 수 있습니다.

그리고 이것이 있습니다.

시스템 주의 사항

애님 몽타주와 관련하여 명심해야 할 몇 가지 세부 사항이 있습니다:

예를 들어 몽타주를 사용하면 다른 트랙을 호출하는 순간 몽타주에서 블렌딩해야 하는 상태가 리셋되므로 몽타주에서 인덱싱하여 레이어 블렌딩을 미리 수행할 수 없습니다.

이와 같은 작업을 수행하기 위해 제가 여전히 작업 중인 아이디어는 스테이트 머신이라는 악을 없애고 일치하는 블렌드 스페이스 세트를 사용하여 애니메이션 그래프를 통해 모든 것을 100% 데이터 기반으로 구동한다는 아이디어에 기반하고 있습니다.

비하인드 스토리 컨셉 영상이므로 제작비는 기대하지 마세요.

이론적으로 "일치하는" 블렌드 스페이스를 구성하면 네트워크를 통해 의도한 대로 일치하고 작동하며 개별 클립을 사용하여 상태 머신을 구축할 필요 없이 애니메이션 그래프에 레이어링할 수 있습니다(이것이 여러분의 의도와 추론이라고 가정하고 있습니다).


  1. FRotationMatrix는 객체의 방향(오일러 변환, FRotator)을 입력받는다. 로컬 객체는 이 Matrix를 통해 월드 공간에서 회전될 수 있다. 단순하게 FRotator를 회전 행렬 형태로 표현을 바꾼 것에 불과하다.
  2. 결과는 로컬 객체의
  3. GetScaledAxis(EAxis::Y) 부분은 회전 행렬의 Y축 방향을 월드 공간 좌표로 표현한다.
  4. RightDirection은 로컬 객체의 Y축 방향을 월드 공간 좌표로 표현한 것이다.

입력 객체의 FRotationMatrix는 로컬 회전


The short answer: