Unity Animation Instancing 官方解决方案初试
Posted _Captain
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity Animation Instancing 官方解决方案初试相关的知识,希望对你有一定的参考价值。
Animation Instancing 是unity官方提出的高性能大规模动画解决方案,起初是为了解决企业用户的需求,后来在Github上开放。
Github地址:
https://github.com/Unity-Technologies/Animation-Instancing
官方Blog地址:
https://connect.unity.com/p/animation-instancing-gao-xing-neng-da-gui-mo-dong-hua-jie-jue-fang-an
项目大概200M,从Github上Clone下来需要有耐心。
1.观察测试项目
本文转自 https://huutu.blog.csdn.net/article/details/109759751
用Unity5.6.7个人版打开测试项目
点击模型查看属性面板
可以看到 SkinnedMeshRender 组件是禁用的。
而且材质中使用的是特定的Shader。
运行项目
复制多个骨骼动画,DC仍然保持在21个,且 Saved By Batch 一直增长。
证实这个方案有效。
2.在自己的项目中使用 Animation Instancing
我这里不创建新项目,只是从头开始做一遍,介绍如何使用Animation Instancing组件。
本文转自 https://huutu.blog.csdn.net/article/details/109759751
2.1 准备新资源
新建my文件夹存放我自己的资源。
把测试用模型拖进来,并且创建好Animation。
对fbx创建一个Prefab,然后添加Animator组件,添加Animation Instancing 组件。
2.2 提取骨骼动画数据,制作数据贴图
菜单栏打开 Animation Generator 面板。
将上面制作的Prefab 拖到 面板里,点击 Generator 按钮生成贴图。
点击按钮后,会有一系列的操作。
再次查看Prefab,发现与之前相比有一些不同。
Prototype 被赋值了,就是自己本身。
本文转自 https://huutu.blog.csdn.net/article/details/109759751
生成的骨骼动画数据贴图存放在 AnimationTexture 文件夹。
因为字节数据并不是按照现有贴图格式进行存储,所以Unity并没有进行解析。
游戏人生 https://www.thisisgame.com.cn/
2.3 修改材质的Shader
将材质修改为特定的Shader。
2.4 创建大量实例测试
创建100个动画实例,DrawCall保持在3个。
以上是关于Unity Animation Instancing 官方解决方案初试的主要内容,如果未能解决你的问题,请参考以下文章