ogre的骨骼数据压缩

参考http://www.azure.com.cn/article.asp?id=430

我在自己的3dmax exporter中实现了一下

应该是我之前就已经优化过

所以结果并不像azure那样有10倍之多

我的测试数据是平均可以减少1/3

当然是在保证动画质量的前提下得到的数据

这个算是一个比较大的优化


因为3dmax实现了很多controler,例如TCB、Bezier等,而ogre只有简单的linear interpolate

所以在3dmax exporter中我们只能老老实实得按一定频率采样,而这样会导致关键帧数量太多,真的是灰常之多

而减少skeleton的数据,则可以明显提高fps

因此使用一系列手段对该数据进行优先是必须的,而且从exporter层就做好例如mesh的vertex cache之类的优化,对于App层实在是非常舒适的一件事情

 

另外值得一提的是

之前做avatar时,曾经所有的mesh都有自己使用到的一套骨骼,假如这时的fps差不多是200

后来只导出一副完整的骨架,然后使用sharesSkeletonInstance,之后的fps差不多翻了一倍


原文地址:https://www.cnblogs.com/oiramario/p/1847222.html