unity 多人同屏处理

一 把fbx的Optimize GameObject勾选上,会优化你模块的面数,不过好像有可能会引起别的问题,优化后和代码上的mesh数据对不上造成bug

二 由于每个sinnedmesh会产生一个drawcall,所以多人同屏时就会卡,针对于这个问题,我们将sinnedmesh转mesh,并且有三个实施办法

1关键帧预bake加插值计算 只烘培关键帧的mesh,然后运行时,跟据时间去找最近的两个关键做插值,优点内存占用不多,缺点需要耗时计算

2全帧预bake不插值 全部都烘培出来,优点不用计算,缺点内存占用大,资源大

3实时bake不插值 实时去烘培,优点资源小,缺点,要耗时计算,内存占用大

原理就像2d序列帧动画一样,只不过换成了3dmesh序列帧动画

其实就是用cpu+内存去换drawcall,有可能并不划算反而更卡,因为drawcall实际上就是cpu+gpu,而且由于实际上等于使用了更多的模型所以场景中obj的数量会很大,造成额外开销

由于没具体研究怎样去烘培,好像是maya里的blendshape或导出插件中有烘培关键帧,所以理解的不是很透彻


这里只是提供了一个方向,但实用性有待考察



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值