创建 PBR 材质

本教程将引导您使用 Shader Graph Editor 构建基于物理的材质。您将图的材质类型设置为 PBR,使用纹理驱动 Material Output 的 Base Color 输入,生成着色器,并在 Preview 中的 3D 网格上验证结果。

前提条件

开始之前:

  • 启用 Shader Graph Editor。请参阅 启用着色器图编辑器。

  • 将纹理导入工程,以便 Texture 节点有可绑定的资源。请参阅 纹理 (Textures)。

  • 向 Node Tree 添加一个 3D 网格(例如 Sphere 或 Box 基本体),以便您可以在 Preview 中验证生成的材质。

创建着色器图

在 Library 中,按 Alt 并右键单击 Materials and Textures > Shader Graphs,然后选择 Shader Graph。Kanzi Studio 会创建着色器图并打开 Shader Graph Editor。

../../_images/empty-editor.png

将材质类型设置为 PBR

在编辑器左上角的 Material 下拉菜单中,选择 PBR。Material Output 节点随即更新,提供以下 PBR 输入端口:Base Color、Metallic、Roughness、Normal、Emissive 和 AO。

../../_images/material-type-panel.png

构建图

在本节中,您将使用纹理驱动 Base Color,并将 Metallic 和 Roughness 设置为常数值。

  1. 在画布上点击右键并选择 Texture。Texture 节点出现,带有资源选择器和缩略图。

  2. 在 Texture 节点上,点击资源选择器,然后选择您作为前提条件导入的纹理。缩略图随即更新,显示所选纹理。

  3. 在画布上点击右键并选择 UV。从 UV 节点的 uv 输出端口拖动到 Texture 节点的 uv 输入端口。

    ../../_images/pbr-partial-graph.png
  4. 从 Texture 节点的 rgba 输出端口拖动到 Material Output 节点的 Base Color 输入端口。

  5. 在画布上点击右键并选择 Scalar。将值设置为 0.0,并将 result 输出拖动到 Material Output 节点的 Metallic 输入。

  6. 再添加一个 Scalar 节点,将值设置为 0.5,并将其 result 输出连接到 Material Output 节点的 Roughness 输入。

    ../../_images/pbr-completed-graph.png

    完成的图使用 UV 坐标对纹理进行采样,将采样得到的颜色传送到 Base Color,并为 Metallic 和 Roughness 使用常数值。Normal、Emissive 和 AO 输入保持未连接状态;Kanzi Studio 使用它们的默认值。

生成着色器

点击编辑器右上角的 Generate Shader。着色器编译成功后,会出现绿色的 Shader compiled successfully 通知,并且 Kanzi Studio 会在 Library 中创建两个资源:

  • 使用生成的 PBR 片段着色器的 Material Type。

  • 一个使用该 Material Type 的 Material。

../../_images/compile-success.gif

如果验证或编译失败,Problems 面板会显示出错的原因。

另请参阅

着色器图(实验性)

创建着色器图

提升参数

基于物理的材料属性

使用材料