官方AnimationInstancing功能使用小结

AnimationInstancing插件是官方推出用来处理GPU渲染骨骼动画的一个插件。具体不表。

由于项目需要,目前需要有同屏将近200个单位同时上场战斗,每个单位都使用了骨骼动画。由于传统的SkinnedMeshrenderer组件是不能合批的。如果使用传统的方式,势必会有draw call过高的影响。因此经过评估后,使用官方推出的AnimationInstancing插件。

在使用的过程中,踩了一些坑。

1.在2018.3版本中,如果材质和shader没有打在同一个AssetBundle中,在手机上会渲染不出物体。究其原因是如果分开打包,shader的GPU Instance会失效。当把材质和Shader打在同一个AB包中时,问题解决。

2.使用插件时出现了所有的战斗单位渲染时采用了同样的一个mesh作为形象,究其原因是因为AnimationInstancing是以SkinnedMeshRender组件所在的gameobject的名字作为一个单位的唯一标识符。而项目中所有单位的skinnedMeshRenderer组件所在的gameobject都是同名的。。因此修改了插件源码,使用父物体的名称作为唯一标识符。该问题解决。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值