当前位置:网站首页>Performance Optimization - Animation Optimization Notes
Performance Optimization - Animation Optimization Notes
2022-08-01 14:04:00 【Chang'an flowers bloom*】
Animation optimization:
There are two Animator-related functions in the UWA report: one is DirectorUpdateAnimationBegin, the other is DirectorUpdateAnimationEnd,
Generally speaking, we should pay attention to the stack of these two functions, through the stack functionThe number of calls and the proportion of time-consuming to further locate the cause
- ApplyOnAnimatorMove: Represents the number of activated animators and controls the number of Animators in Acitve
Cause: Whether the off-screen animator is activated The cache animator is active Too many animator components on the ui (simple ui effects can use dotween)
- Through the stack analysis of Animators.Update, ApplyBuiltinRootMotion
Animation produces displacement If the animation does not require displacement, this option does not need to be turned on
- Enable Optimize Game Objects option
Unity will remove the level information of Transform when processing animation clips. This setting is very obvious for the time-consuming improvement of Animators.Update
- Control the trigger frequency of Animator.Initialize
It will be triggered when the GameObject containing the animator component is Acitve or Instantiate, which is time-consuming. When the cache pool hides the character, the GameObject is not directly hidden but the DisableAnimator component, and the GameObject is moved off-screen
- Animator's CullingMode mode AlwaysAnimate too many
With displacement animation changed to CullUpdateTransform without displacement animation changed to CullCompletely
It is recommended to use GPU Skinning + GPU Instancing for crowd animation rendering. It is recommended to turn off the native Gpu Skinning operation of the unity engine, which will cause extra overhead and cause invalid waiting for the main thread or rendering thread.
https://lab.uwa4d.com/lab/5bc6f85504617c5805d4eb0a
https://lab.uwa4d.com/lab/5bc5511204617c5805d4e9cf
- AnimatorOverride can be used to optimize the memory of animations on the fly using dynamic loading of animations
- Optimize the animation accuracy, increase the Constant curve, and delete the scaling curve as needed
- FBX animation precision compression selection
边栏推荐
- 珠海首个水环境安全监测系统上线
- 【5GC】5G网络切片与5G QoS的区别?
- Istio投入生产的障碍以及如何解决这些问题
- Efficiency tools to let programmers get off work earlier
- 安培龙IPO过会:年营收5亿 同创伟业与中移创新是股东
- PAT 1162 Postfix Expression(25)
- tensorflow2.0手写数字识别(tensorflow手写体识别)
- D - Draw Your Cards(模拟)
- Six Stones Programming: Problems must be faced, methods must be skillful, and functions that cannot be done well must be solved
- postgresql之page分配管理(二)
猜你喜欢

多线程案例——阻塞式队列

OpenSSL SSL_read: Connection was reset, errno 10054
![leetcode: 1201. Ugly Number III [Dichotomy + Mathematics + Inclusion and Exclusion Principle]](/img/44/bf1d9b9d85939e73bc44be2f9701e1.png)
leetcode: 1201. Ugly Number III [Dichotomy + Mathematics + Inclusion and Exclusion Principle]

考研大事件!这6件事考研人必须知道!

Qt实战案例(55)——利用QDir删除选定文件目录下的空文件夹

PAT1165 Block Reversing(25)

台积电认清了形势,新的建厂计划没有美国,中国芯片也得到重视

VINS-mono 论文解读:IMU预积分+Marg边缘化

脚本语言Lua的基础知识总结

MCU开发是什么?国内MCU产业现状如何
随机推荐
使用open3d可视化3d人脸
树和二叉树的转换
8. SAP ABAP OData 服务如何支持创建(Create)操作
论文笔记All about Eve: Execute-Verify Replication for Multi-Core Servers
【无标题】
Based on 10 years of experience in stability assurance, what are the three key questions to be answered in failure recovery?|TakinTalks big coffee sharing
34、树莓派进行人体姿态检测并进行语音播报
台积电认清了形势,新的建厂计划没有美国,中国芯片也得到重视
Pytorch —— 分布式模型训练
Programmer's Romantic Tanabata
MCU开发是什么?国内MCU产业现状如何
JMP Pro 16.0软件安装包下载及安装教程
Performance Optimization - Resource Optimization Notes
Two Permutations
超全!全国近90所大学考研报录比汇总!
嵌入式开发:创建和使用可移植类型的7个技巧
How do we do full-link grayscale on the database?
sql中常用到的正则表达
性能测试入门指南
VIP的实现原理