Dots 骨骼动画
工作原理:GPU Instancing ,在多线程JOB中处理数据 ,最后调用渲染
动画烘培的图片记录每帧骨骼变化的数据,在CPU中计算出当前运行带第几帧和前一帧的进度,传给shader ,然后顶点着色器根据当前的帧数在图片中计算出当前顶点蒙皮后的结果
第一种播放方式
具体使用
在带有animator组件的预制体上绑定AnimationInstancing脚本,然后在Hierarchy中拖入Animation Instancing面板Asset to Generate中然后点击Generate (自动生成动画贴图)
将播放动画的预制体本身拖入AnimationInstancing .Prototype
(骨骼的信息可以隐藏)
然后将Shader换成Animation Instancing系列的着色器
在预制体上挂上ConvertToEntity并将Conversion Mode设置为ConvertAndInjectGameObject
运行游戏,动画就可以跑起来了
第二种
第三方的动画库
https://github.com/joeante/Unity.GPUAnimation 下载地址
使用起来也比较方便。在播放动画的对象上直接绑定Convert To Character组件 ,然后绑定上需要播放的动画文件就行