表面外观 对象可让你覆盖一个 MeshPart 的外观,使用高级图形选项。最显著的是,它可以在单个对象上应用一组 物理基础渲染 (PBR) 纹理图像或地图。结合多个纹理地图可以更准确地模拟任何照明环境中的颜色、粗糙度和反射率,可以增强资产和环境的视觉元素;请参阅PBR纹理了解更多详情。

<img src="/assets/modeling/surface-appearance/SurfaceAppearance-Example-3.jpg" width="405" alt="A realistic mossy rock" />
这个对象在 MeshPart 上的外观取决于用户的设备和图形质量等级。为了获得最佳效果,您可能需要预览不同质量等级设置的内容。
请注意,大多数 SurfaceAppearance 属性不能由脚本修改,因为必要的预处理通常在执行时间时太贵了。
概要
属性
决定 SurfaceAppearance.ColorMap 的 alpha 通道如何使用。
对现有颜色地图应用染色。通过颜色选择器直接设置或通过 Color3 程序化设置。
决定了表面的颜色和不透明度。
确定哪些表面部分是金属还是非金属。
通过添加凹坑、凹陷、裂缝和弯曲来修改表面的照明。
确定表面上的粗糙度。
属性
AlphaMode
该属性决定了 SurfaceAppearance.ColorMap 的 alpha 通道如何使用。
当设置为 Transparency 和 MeshPart.Transparency 被设置为 0 时,在 ColorMap 中的不透明像素将在 3D 场景中完全不透明地渲染。这种组合对深度基于的效果和遮蔽更好地工作
当设置为 Transparency 和 MeshPart.Transparency 设置为至少 0.02 时,使用了一种不同的混合方法,可以更好地表达光滑的透明度渐变和柔软的边缘。这种组合不支持所有效果,遮蔽也许不完美。
请参阅这里获取更多信息。
ColorMap
该属性决定了表面的颜色和不透明度。这种纹理有时也被称为 反射率 纹理。此纹理的 alpha 通道控制其不透明度,根据 SurfaceAppearance.AlphaMode 设置的不同行为。
请参阅这里获取更多信息。
ColorMapContent
MetalnessMap
该属性决定哪些表面部分是金属还是非金属。金属地图是一个灰度图像,黑色像素对应非金属,白色像素对应金属。
金属只反射与金属相同颜色的光,而且反射的光比非金属多得多。金属性地图中的大多数像素将是纯黑色或纯白色,而位于其中的值可用于模拟基于金属区域顶部的污垢或嘈杂。
当 Lighting.EnvironmentSpecularScale 为 0 时,金属性没有影响。为了最真实的反射,建议将 Lighting.EnvironmentSpecularScale 和 Lighting.EnvironmentDiffuseScale 设置为 1,以及 Lighting.Ambient 和 Lighting.OutdoorAmbient 设置为 (0, 0, 0) .
请参阅这里获取更多信息。
MetalnessMapContent
NormalMap
该属性通过添加凹坑、孔、裂缝和曲线来修改表面的照明,而不需要添加更多的多边形。普通地图是RGB图像,可以修改用于灯光计算的表面正常向量。其 R 、 G 和 B 通道分别对应本地表面向量的 X 、 Y 和 Z 组件,每个通道的 0 和 255 字节值分别对应普通向量组件的 -1 和 1.016 respectively。这个范围从 -1 延伸到 1 以便一个 127 位的字节值映射到准确为 0。
普通向矢量力的 Z 轴始终定义为基础网格的正常方向。统一的(127, 127, 255)图像转换为完全平坦的普通地图,其中普通与网格表面垂直处处存在;这种格式被称为“斜角空间”普通地图。请注意,Roblox 不支持世界空间或对象空间普通地图。
翻转不正确的普通组件可能会使凹陷处出现凹陷。如果你导入普通地图并注意灯光看起来不正关闭,你可能需要反转图像的 G 通道。渐变空间框架的 X 和 Y 轴对应图像在变形后的 X 和 Y 方向。如果你在图像编辑器中查看你的普通地图,像它显示在表面上一样,向屏幕右侧的正常应该显得更红,向屏幕顶部的正常应该显得更绿。有时使用“DirectX格式”和“OpenGL格式”来描述普通地图的 G 通道是否反转(Roblox期望OpenGL格式)。
Roblox 还期望导入的网格包含斜角。模型软件也可以将其称为“斜角空间”信息。如果你使用了普通地图,但它似乎没有任何视觉差异,你可能需要重新从模型软件中导出网格以及其渐变信息。
请参阅这里获取更多信息。
NormalMapContent
RoughnessMap
该属性决定了表面上的粗糙度。粗糙度地图是一个灰色图像,黑色像素对应最光滑的表面,白色像素对应最粗糙的表面。
请注意,表面粗糙度在非常小的缩放围内工作。对光滑表面的反思精确而集中,而对粗糙表面的反射则更模糊和分散。
请参阅这里获取更多信息。