移动平台的材质

移动平台上的材质(特征级 ES 2)采用与其他平台相同的基于节点的创建过程。几乎所有材质输入均适用于移动材质, 而且材质在移动平台上的外观和行为通常与在其他平台上相同。例如,以下材质输入在移动平台上的工作方式与其在 PC 上的工作方式完全相同。

  • BaseColor

  • Roughness

  • Metallic

  • Specular

  • Normal

  • Emissive

但在创建将用于移动平台的材质时,有些注意事项必须予以考虑:

  • 由于硬件限制,您只能使用 5 个纹理取样器。

  • 只有默认和无光照着色模型可用。

  • 定制 UV should be used to avoid dependent texture fetches (no math on texture UVs)。

  • 半透明和屏蔽材质非常昂贵。建议您尽可能使用 不透明材质

  • 深度淡化可在适用于 iOS platforms 的半透明材质中使用。硬件不支持从深度缓存中提取的平台 NOT 支持此功能,模拟此功能将产生不可接受的性能成本。

此外,某些功能根本不适用于移动平台。

  • Scene Color expression

  • Refraction input

  • Tessellation input

  • Subsurface Scattering shading model

特征级 ES 3.1

特征级 ES 3.1 针对高端移动设备(如金属兼容设备)应运而生。这让您能够在材质中使用总共多达 16 个取样器。 为了保持与较旧设备的兼容性,请使用 特征级 切换材质节点。

移动专用材质设置

属性 说明
bFullyRough 启用后,可节省许多着色器 ALU 指令和一个取样器。这可以有效禁用镜面反射,同时保持整体的反射能量。
bUseLightmapDirectionality 禁用后,来自光照贴图的光照会比较平淡,但更便宜。

移动材质故障排除

问题 解决方案
默认材质显示在移动预览器中。 打开 Engine\Saved 中的日志文件 ,然后搜索 error messages 以了解如何修复材质。
带时间表达式的材质动画看起来不连贯,但其他地方的帧速率良好。 确保 Time 表达式中已启用“周期”属性并具有一个周期。这会将计算移动到 CPU,并以全精度而不是半精度运行。
Tags