我知道的一种方法是,利用LOD的思想,逐步近处细致,远处粗糙。那么,有没有其他的思路那?
我知道的一种方法是,利用LOD的思想,逐步近处细致,远处粗糙。那么,有没有其他的思路那?
|
ZyZyZzzMay 10, 2015
1
1. 什么平台
2. 是优化动画还是优化模型本身 |
|
3
@CCFSA PC端的话模型若不是高模就尽量压榨性能呗。
非要的话就骨骼动画改成自己保存模型的关键帧(根据需要压缩关键帧的量),根据时间自行取前后两关键帧算blend的结果。 还可以直接上逐帧,内存上实例化每帧模型对象,场景中所有角色实例直接引用这个模型对象,之后batch~(空间换时间) |
|
5
@ZyZyZzz 答的很好啊,但是,这两个方案似乎在用空间换时间。 假设这些骨骼动画的区别非常多的话,关键帧似乎会占用非常庞大的内存。 batch的话,如果骨骼动画不一样,似乎也会产生这个问题。 有没有更加通用的方案呢?
|
|
6
@CCFSA 额……因为我说的方法主要是用在移动端的优化上,移动端不可能让你用那么多复杂的骨骼动画。
顺便,关键帧可能没你想像的那么占内存,这些都是可以动态加载的。更复杂的骨骼动画会涉及到几个base动画的blendtree来实现更多的效果。不过这些应该是3d动画师要考虑的事情? |