V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CCFSA
V2EX  ›  程序员

优化场景中,大量的骨骼动画模型,大家的思路是?

  •  
  •   CCFSA · 2015-05-10 20:06:01 +08:00 · 2556 次点击
    这是一个创建于 3487 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我知道的一种方法是,利用LOD的思想,逐步近处细致,远处粗糙。那么,有没有其他的思路那?

    7 条回复    2015-05-13 15:48:00 +08:00
    ZyZyZzz
        1
    ZyZyZzz  
       2015-05-10 22:50:05 +08:00
    1. 什么平台
    2. 是优化动画还是优化模型本身
    CCFSA
        2
    CCFSA  
    OP
       2015-05-11 14:44:27 +08:00
    @ZyZyZzz Windows 平台的, 都可以。这其实是一道师傅出的题目,好奇可否有不同的思路解决它。
    ZyZyZzz
        3
    ZyZyZzz  
       2015-05-11 15:21:58 +08:00   ❤️ 1
    @CCFSA PC端的话模型若不是高模就尽量压榨性能呗。
    非要的话就骨骼动画改成自己保存模型的关键帧(根据需要压缩关键帧的量),根据时间自行取前后两关键帧算blend的结果。
    还可以直接上逐帧,内存上实例化每帧模型对象,场景中所有角色实例直接引用这个模型对象,之后batch~(空间换时间)
    CCFSA
        4
    CCFSA  
    OP
       2015-05-11 23:03:58 +08:00
    @ZyZyZzz 答的很好,但是,有没有更加高效的方案那?
    CCFSA
        5
    CCFSA  
    OP
       2015-05-11 23:07:49 +08:00
    @ZyZyZzz 答的很好啊,但是,这两个方案似乎在用空间换时间。 假设这些骨骼动画的区别非常多的话,关键帧似乎会占用非常庞大的内存。 batch的话,如果骨骼动画不一样,似乎也会产生这个问题。 有没有更加通用的方案呢?
    ZyZyZzz
        6
    ZyZyZzz  
       2015-05-12 10:20:25 +08:00   ❤️ 1
    @CCFSA 额……因为我说的方法主要是用在移动端的优化上,移动端不可能让你用那么多复杂的骨骼动画。

    顺便,关键帧可能没你想像的那么占内存,这些都是可以动态加载的。更复杂的骨骼动画会涉及到几个base动画的blendtree来实现更多的效果。不过这些应该是3d动画师要考虑的事情?
    CCFSA
        7
    CCFSA  
    OP
       2015-05-13 15:48:00 +08:00
    @ZyZyZzz 哥们, 跟你对话收获很大啊,多谢。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1078 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:45 · PVG 06:45 · LAX 14:45 · JFK 17:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.