包含此页的版本:
不含此页的版本:
以下是创建模型以获得最佳性能的一些提示。其中一些提示适用于所有模型,有些仅适用于动画模型:
使用这些技术可能有助于提高模型的动画和渲染速度,但请注意,它们也可能降低您尝试实现的视觉保真度和逼真效果。对于每种情况,没有单一的答案可以在更好的性能和视觉真实感之间产生完美的平衡。你必须根据你的角色的复杂性和你的场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表,与您需要的整体外观和真实感相比。
您应该使用的多边形数量取决于您需要的视觉质量和目标平台。这两个相互竞争的事实同样正确:
还要考虑还有什么在争夺渲染资源。如果你有很多游戏对象或地形场景中的地形。地形游戏对象会向场景添加一个大型平面,您可以使用地形的检查器窗口创建详细的景观。更多信息
请参阅术语表同时,请考虑减少每个网格体的多边形数。
请注意,图形硬件必须处理的实际顶点数通常与建模应用程序报告的顶点数不同。建模应用程序通常显示构成模型的不同角点的数量(称为几何顶点计数)。但是,对于显卡,某些几何顶点需要拆分为两个或多个逻辑顶点以进行渲染:例如,如果顶点具有多个法线、UV 坐标或顶点颜色,则必须拆分顶点。因此,Unity 中的顶点计数通常高于 3D 应用程序给出的计数。
保留materials(材质) 定义表面应如何渲染的资产。更多信息
请参阅术语表在每个模型上尽可能低。仅当您需要使用不同的材质时,才在角色上使用多个材质着色器在 GPU 上运行的程序。更多信息
请参阅术语表对于不同的零件;例如,您可以为角色模型上的眼睛使用特殊的着色器。
对于使用蒙皮网格渲染器的动画角色模型,每个角色应仅使用其中一个组件。Unity 的动画系统使用可见性剔除和边界体积 表示碰撞体或触发器的边和面的封闭形状。
请参阅术语表更新。仅当你使用一个动画组件和一个蒙皮组件时,它才会激活这些优化网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表模型上的渲染器。
使用两个蒙皮网格代替单个蒙皮网格可能会使模型的渲染时间大约增加一倍,并且使用多个网格几乎没有任何实际优势。
一般来说,使用的骨骼越少,性能就越好。但是,有时您需要创建具有大量骨骼的角色模型:例如,当您想要大量可自定义的附件时。这些额外的骨骼会增加构建的大小,并且每增加一个骨骼可能会产生相对的处理成本。例如,在已经有 30 个骨骼的装备上增加 15 个骨骼,Unity 在通用模式下需要多 50% 的作来解决,这可能会影响解决所需的时间。
请注意,你可以为通用和人形类型设置额外的骨骼。当你没有使用附加骨骼播放动画时,处理成本应该可以忽略不计。如果他们的附件不存在或隐藏,则这种成本甚至更低。
出于性能原因,请使用线性混合蒙皮(skinning) 将骨骼关节绑定到角色网格体或“皮肤”顶点的过程。使用外部工具(如Blender或Autodesk Maya)执行。更多信息
请参阅术语表每个顶点最多有四个影响。但是,某些 3D 建模应用程序允许四个以上的骨骼影响顶点,因此您必须权衡性能成本与更大的控制。
当 Unity 导入动画时,它会将模型的反向运动学 (IK) 节点烘焙为正向运动学描述角色关节和身体的位置和方向的几何体。由反向运动学用于控制角色移动。
请参阅术语表(FK),因此 Unity 根本不需要 IK 节点。但是,如果它们保留在模型中,则 Unity 仍会将它们包含在计算中,即使它们不会影响动画。您可以在 Unity 或 3D 建模应用程序中删除冗余 IK 节点。为了便于删除IK节点,请在建模时保持单独的IK和FK层级。