gsyhgz 发表于 2013-4-18 13:45

Unity3D性能优化之角色建模

本帖最后由 gsyhgz 于 2013-4-18 13:46 编辑

Unity3D性能优化之角色建模
使用一个单一的Skinned Mesh Rendere
应该对于每个角色仅使用一个skinned mesh renderer。Unity使用可见性裁剪和包围体更新的方法来优化角色的运动,并且这些优化只有在您使用一个运动组件和一个skinned mesh renderer时才会被激活。如果在一个网格的位置使用了两个蒙皮网格,那么该模型的渲染时间将变成原来的两倍。这样,这种做法与使用多个网格相比几乎没有任何实际的优势。

使用尽可能少的材质
应尽可能少的材质。在一个角色上使用多个材质的唯一理由应该是你需要在不同的部分使用不同的着色器(比如在眼睛上使用特殊的着色器)。但是,在大多数情况下,一个角色2-3个材质就已经足够了。

使用尽可能少的骨骼
在桌面游戏中,一个骨骼结构大致使用15-60跟骨头。使用的骨骼数越少,您获得更好的性能。如果使用30根骨头的话,可以在桌面平台上达到非常好的质量,同时在移动平台上也会得到相当好的质量。理论上来说,在移动平台上应该保持骨骼数在30根以下,而在桌面游戏中也不要超过30根太多。
多边形数量
使用的多边形的数量取决于所需要的质量和您的目标平台。对于移动设备,每个mesh拥有300-1500个多边形的话将会达到比较好的效果,而对于桌面平台,这个理论范围大约为1500-4000。当然,如果游戏中任意时刻内屏幕上出现了大量的角色,那么您应该降低每个网格的面片数。比如,半条命2对于每个角色使用2500-5000个三角形面片。目前PS3或者Xbox360上的AAA级游戏中,每个角色大概拥有5000-7000个三角形面片。unity3d教程
保证前向运动结点和逆向运动结点分离
当运动导入时,一个模型的逆向运动(IK)结点会被烘焙到前向运动(FK)结点中,但实际上,Unity根本就不需要逆向运动结点。因此,如果它们保存在模型中,那么即使它们对运动没有任何影响也会占有一定的CPU开销。您可以根据您的需求在Unity或其他建模工具中删除多余的IK结点。理想情况下,您应该在建模时将IK和FK结点分离,这样在需要的时候就比较容易删除IK结点。

hdgq123 发表于 2017-4-4 22:00

很不错

hdgq123 发表于 2017-4-4 22:12

好帖就是要顶

再創奇跡 发表于 2017-4-4 22:09

真心顶

再創奇跡 发表于 2017-4-4 22:05

难得一见的好帖

30度水平向上 发表于 2017-4-4 22:28

LZ真是人才

哎倪 发表于 2017-9-7 14:45

好帖就是要顶

威猛 发表于 2017-9-7 15:01

顶顶多好

acmesoft 发表于 2017-9-7 15:23

真心顶

孙佳 发表于 2017-9-7 14:38

难得一见的好帖
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: Unity3D性能优化之角色建模