基于物理的渲染教程

基于物理的渲染 (PBR) 是一种渲染解决方案,可模拟材料对真实光线行为的反应。 例如,某些金属特性会产生反射或改变光线通过不同类型玻璃的偏向和折射方式。

本指南介绍在《我的世界》基岩版中设计 PBR 材质时的一些基本工作流程,并为绿宝石矿石块创建自定义材质集。

我们将在本教程中使用绿宝石矿石。 当我们完成后,石头部分看起来更粗糙,绿宝石方块在光线下会看起来更有金属感,在黑暗中会发出微弱的光芒。

绿宝石矿石块材质在夜间微弱发光的图像

在本指南结束时,您将了解以下内容:

  • 如何使用 Adobe Photoshop 创建自定义材质集。
  • 如何利用颜色通道在单个文件中分配多个贴图。

要求

您需要完成以下教程:

尽管会提供材质,您还是需要数字绘制软件才能创建材质。 本教程将使用 Adobe Photoshop。

设置 Texture_Set.JSON 文件

首先,您需要创建一个 Texture Set .JSON 文件,用于将新材质加载到游戏中。

备注

本教程是基于物理的渲染简介的续篇,并假设所有设置步骤都已完成,如上一指南中所述。

  1. 在行为包中,导航到 textures/blocks 文件夹。
  2. 创建一个名为 emerald_ore.texture_set.json 的文件并将以下代码添加到其中。

emerald_ore.texture_set.json

{
  "format_version": "1.16.100",
  "minecraft:texture_set": {
    "color": "emerald_ore",
    "metalness_emissive_roughness": "emerald_ore_mer"
  }
}
  1. 保存并关闭文件。

创建材质

设置好 JSON 文件后,让我们看看如何设置 Adobe Photoshop 以使用《我的世界》材质。 对于您的 "color" 值,我们将使用原版资源包中包含的现有原版材质。

绿宝石矿石默认方块材质的图像

  1. 右键单击并下载上面的图像。
  2. 右键单击该文件,选择打开方式,然后选择 Adobe Photoshop
  3. 当 Photoshop 打开时,选择文件...另存为... 并将文件另存为 .PSD 文件类型。

创建“mer”材质

在之前的指南中,为绿宝石矿石块设置材质集 JSON 时,您可能已经注意到有一个名为 emerald_ore_mer 的文件被设置为“metalness_emissive_roughness”值。 mer 在本例中是 metalness_emissive_roughness 的缩写,因为它是包含所有三个贴图的单个材质文件。

emerald_ore_mer.png 概览

因为每个材质贴图都用作灰度值,所以可以为每个贴图分配一个颜色通道:

  • 红色通道: 金属贴图。 值设置在 0.01.0 的范围内。
  • 绿色通道: 自发光贴图。 值设置在 0.01.0 的范围内。
  • 蓝色通道: 粗糙度贴图。 值设置在 0.01.0 的范围内。

粗糙度

因为绿宝石矿石被描绘成嵌在灰石头中的绿宝石碎片,所以它非常适合展示我们如何使用粗糙度贴图使绿宝石部分看起来更光滑,而让石头看起来更粗糙。

  1. 通过选择图层选项卡底部的文件夹图标来创建一个新图层组。
  2. 将图层组命名为 Roughness
  3. 在 Photoshop 中,创建一个新图层并将其命名为 Rough Map
  4. 在绿宝石方块的部分上绘制黑色,使它们光滑。
  5. 在石头上绘制白色,使石头变得粗糙。
  6. 右键单击 Roughness 图层组并选择混合选项
  7. 高级混合下,取消选中红色和绿色通道,使蓝色是唯一选中了复选框的通道。
  8. 选择确定关闭混合选项窗口。

这是绘制的输出。 我们关闭了红色和绿色通道,因此,它显示为蓝色和黑色。

绿宝石矿石的粗糙度 mer

将贴图分组到名为 Roughness 的单个图层组中,您可以组合多个图层以绘制多个值,而不必担心任何重叠或中断工作。

自发光

尽管绿宝石矿石块本身不发出任何光,我们还是为绿宝石添加微光以展示光发射。

  1. 通过选择图层选项卡底部的文件夹图标来创建一个新图层组。
  2. 将图层组命名为 Emissive
  3. 在 Photoshop 中,创建一个新图层并将其命名为 Emissive Map
  4. 在绿宝石方块的部分上绘制白色,使它们发光。
  5. 在石头上绘制黑色。
  6. 右键单击 Emissive 图层组并选择混合选项
  7. 高级混合下,取消选中红色和蓝色通道,使绿色是唯一选中了复选框的通道。
  8. 选择确定关闭混合选项窗口。

这里只是自发光图层的输出。

绿宝石矿石的自发光 mer

金属

最后,我们使绿宝石矿石块看起来更有金属感。

  1. 通过选择图层选项卡底部的文件夹图标来创建一个新图层组。
  2. 将图层组命名为 Metallic
  3. 在 Photoshop 中,创建一个新图层并将其命名为 Metallic Map
  4. 在绿宝石方块的部分上绘制白色。
  5. 在石头上绘制黑色。
  6. 右键单击 Metallic 图层组并选择混合选项
  7. 高级混合下,取消选中红色和蓝色通道,使绿色是唯一选中了复选框的通道。
  8. 选择确定关闭混合选项窗口。

这里仅是金属图层的输出。

绿宝石矿石的金属 mer

导出文件

正确设置和分配所有三个材质贴图后,现在可以导出文件。

  1. 选择文件...另存为... 并将文件另存为 emerald_ore_mer.png

或者,您可以下载下面的文件。

完整的 emerald_ore_mer png 文件

  1. 将该 mer 文件与材质集 JSON 文件和方块材质一起放在 textures/blocks 文件夹中。

《我的世界》中夜间发光的绿宝石矿石方块

下一步内容?

资源中的迷雾

现在,您已经了解如何创建基于物理的自定义渲染材质包,您可以查看在 Render Dragon 引擎中是如何调整迷雾的,并根据自己的偏好自定义设置。