이 페이지에는 Unity에서 최고의 성능을 누릴 수 있도록 애니메이션 시스템, 런타임 최적화 등에 대한 다양한 팁이 소개되어 있습니다.
참고: Unity에서 최상의 성능을 발휘하기 위해 3D 애플리케이션에서 캐릭터를 모델링하는 방법에 대한 팁은 최적의 성능을 위한 캐릭터 모델링을 참조하십시오.
애니메이터는 컨트롤러가 설정되어 있지 않으면 처리 시간이 증가하지 않습니다.
블렌딩 없이 애니메이션 클립을 하나만 재생하면 Unity가 레거시 애니메이션 시스템보다 느려질 수 있습니다. 오래된 시스템은 매우 직접적이어서 커브를 샘플링하여 트랜스폼에 직접 기록합니다. Unity의 현재 애니메이션 시스템에는 블렌딩에 사용되는 임시 버퍼가 있고 샘플링된 커브 및 기타 데이터가 추가로 복사됩니다. 현재 시스템 레이아웃은 애니메이션 블렌딩과 더 복잡한 설정에 최적화되어 있습니다.
스케일 커브 애니메이션화에는 이동 애니메이션화와 회전 커브보다 많은 비용이 들어갑니다. 성능을 개선하기 위해서 스케일 애니메이션은 피해야 합니다.
참고: 상수 커브(애니메이션 클립의 길이 값이 같은 커브)에는 적용되지 않습니다. 상수 커브는 최적화되고 일반적인 커브보다 리소스를 더 적게 사용합니다. 기본 씬 값과 같은 값이 포함된 상수 커브는 씬에 매 프레임마다 작성되지 않습니다.
대부분의 경우 Unity는 애니메이션을 평가하고 애니메이션 레이어 및 애니메이션 상태 머신에 사용되는 리소스를 최소한으로 유지합니다. 레이어를 애니메이터에 하나 더 추가함으로 인해 증가하는 리소스 사용량은 동기화 여부에 관계없이 레이어에서 재생하는 애니메이션 및 블렌드 트리에 따라 다릅니다. 레이어의 가중치가 0이면 Unity가 레이어 업데이트를 건너뜁니다.
다음 팁은 타입을 결정하는 데 유용합니다.
최적화할 수 있는 요소는 많으며, 몇 가지 유용한 팁은 다음과 같습니다.
항상 애니메이터의 컬링 모드를 렌더러 기반(Based on Renderers) 으로 설정하고 스킨드 메시 렌더러의 오프스크린일 때 업데이트(Update When Offscreen) 프로퍼티를 비활성화하십시오. 그러면 캐릭터가 보이지 않을 때 Unity가 애니메이션을 업데이트하지 않습니다.
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.