이 페이지에는 Unity에서 최고의 성능을 얻는 데 도움이 되는 애니메이션 시스템, 런타임 최적화에 대한 몇 가지 팁이 포함되어 있습니다.
참고: Unity에서 최고의 성능을 발휘하기 위해 3D 애플리케이션에서 캐릭터를 모델링하는 방법에 대한 팁은 최적의 성능을 위한 캐릭터 모델링을 참조하십시오.
애니메이터는 컨트롤러가 설정되어 있지 않으면 처리하는 데 시간을 소비하지 않습니다.
블렌딩 없이 단일 애니메이션 클립을 재생하면 Unity가 레거시 애니메이션 시스템보다 느려질 수 있습니다. 예전 시스템은 매우 직접적이며 커브를 샘플링하고 트랜스폼에 직접 작성합니다. Unity의 현재 애니메이션 시스템에는 블렌딩에 사용하는 임시 버퍼가 있으며, 샘플링된 커브와 기타 데이터의 복사 기능이 추가되었습니다. 현재 시스템 레이아웃은 애니메이션 블렌딩과 더 복잡한 설정에 최적화되어 있습니다.
스케일 커브 애니메이션화는 이동 및 회전 커브 애니메이션화보다 리소스를 더 많이 사용합니다. 성능을 개선하려면 스케일 애니메이션을 사용하지 마십시오.
참고: 상수 커브(애니메이션 클립의 길이에 대해 값이 동일한 커브)에는 적용되지 않습니다. 상수 커브는 최적화되어 있으며 일반 커브보다 리소스를 더 적게 사용합니다. 기본 씬 값과 동일한 값을 가진 상수 커브는 프레임마다 씬에 작성되지 않습니다.
대부분의 경우 Unity는 애니메이션을 평가하며, 애니메이션 레이어 및 애니메이션 상태 머신에 대한 오버헤드를 최소화합니다. 애니메이터에 다른 레이어를 추가하는 비용(동기화 여부)은 레이어가 플레이하는 애니메이션과 블렌드 트리에 따라 다릅니다. 레이어의 가중치가 0이면 Unity는 레이어 업데이트를 건너뜁니다.
다음 유형을 결정하는 데 유용한 팁입니다.
다음은 최적화에 대한 몇 가지 유용한 팁입니다.
항상 애니메이터의 Culling Mode를 Cull Completely로 설정하고 스킨드 메시 렌더러의 Update When Offscreen 프로퍼티를 비활성화하여 애니메이션을 최적화합니다. 그러면 캐릭터가 보이지 않을 때 Unity가 애니메이션을 업데이트하지 않습니다.