导入Blender模型后,Unity3D帧速率下降

时间:2015-11-03 21:31:55

标签: android unity3d blender makehuman

我正在为 Android 制作 Unity 的3D游戏。在游戏中有一个主角,同时可能在屏幕上有大约10个对手,都使用相同的模型(“对手”的预制件仅在一种材料中与其他颜色不同)。

该模型是使用 MakeHuman Blender 设计的。

在PC上(因为渲染速度快得多)没有问题,但在Android设备上进行测试时,渲染时间将帧速率降低到大约25-30 FPS,当有3-4个或更多的主体时屏幕,创造一种真正“迟滞”的感觉(我期待帧速率约为60 FPS)。

http://i.imgur.com/PfWtZe4.png

在导入Blender模型之前,我使用了占位符球体,并且没有这样的行为。由于这是我第一次使用Blender和这样的3D模型,我不确定我的模型是否在移动游戏的预期尺寸范围内。我目前的模型包括: 5,956 Verts,10,456 Faces,10,819 Tris,文件大小约为6.5 MB (MakeHuman最初生成的更大,但我设法压缩它并显着优化它,但仍然没有重大影响。)

我尝试了不同的解决方案,包括将模型中的所有网格合并为一个,关闭阴影,使用尽可能少的材料等。所有尝试都没有或只有非常有限的改进。

欢迎任何想法。干杯!

2 个答案:

答案 0 :(得分:1)

  

我目前的模特包括:5,956个Verts,10,456个面孔,10,819个Tris   文件大小约为6.5 MB

听起来对我来说太过分了。

另外,请记住,如果您正在进行任何此类碰撞计算,那么每个额外的复杂性都需要花费更多的时间

答案 1 :(得分:1)

对于手机游戏我建议你重新模仿该模型(尽管它不是一个不错的工作,但结果比例如decimate-modifyer要好得多)而不是从高分辨率模型中为它​​烘焙normalmap 。