你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

教程:在 3ds Max 中设置基于物理的渲染材料

概述

在本教程中,你将学习如何:

  • 将具有高级照明的材料分配给场景中的对象。
  • 处理对象和材料的实例化。
  • 将场景导出为 FBX 格式并选择重要选项。

注意

本教程中所述的过程适用于 3ds Max 2019 和 3ds Max 2020。 3ds Max 2021 导出凹凸贴图的方式发生了变化,这意味着如果使用该版本,转换服务将找不到法线贴图。

在 3ds Max 中创建基于物理的渲染 (PBR) 材料是一项简单的任务。 它在许多方面与 Maya 等其他内容创建应用中的 PBR 设置类似。 本教程介绍如何为 Azure 远程渲染项目实现基本 PBR 着色器设置和 FBX 导出。

本教程中的示例场景包含许多多边形 box 对象。 并为它们分配了不同的材料,如木材、金属、喷漆金属、塑料和橡胶。 广泛地说,每种材料包含以下所有或大多数纹理:

  • 反照率,它是材料的颜色贴图,也称为“漫反射”和“基础颜色” 。
  • 金属度,用于确定材料是否为金属以及哪些部分是金属。
  • 粗糙度,用于确定表面的粗糙度或平滑度。 它还会影响表面上的反射和高光的清晰度或模糊度。
  • 法线,无需添加更多多边形即可向表面添加细节。 细节的例子包括金属表面上的点蚀或凹痕或木材中的颗粒。
  • 环境光遮蔽,用于向模型添加软底纹和接触阴影。 它是一个灰度图,指示模型的哪些区域接收完整照明(白色)或完整阴影(黑色)。

准备场景

在 3ds Max 中,设置 PBR 材料的过程如下所示。

首先,我们将创建许多 box 对象,每个对象表示不同类型的材料。

提示

值得注意的是,在开始为远程渲染创建资产之前,它使用“米”作为度量单位。

因此,最好将场景的系统单位设置为“米”。 在导出场景时,最好在 FBX 导出设置中将“单位”设置为米。

以下屏幕截图显示了在 3ds Max 中将系统单位设置为“米”的步骤。

  1. 在主菜单上,转到“自定义”>“单元设置”>“系统单元设置” 。 在“系统单元标度”中,选择“”:显示如何设置系统单位的屏幕截图。

  2. 现在,我们可以开始创建模型。 在示例场景中,我们将创建多个 Box 对象,每个对象表示不同类型的材料。 例如金属、橡胶、塑料。

    提示

    在创建资产时,最好按自己的方式适当地对其命名。 这样在场景包含大量对象的情况下,就更易于查找。

  3. 重命名对象,如以下屏幕截图所示:

    显示如何重命名对象的屏幕截图。

分配材料

现在,场景中包含一些对象(在本例中是一些立方体),接下来可开始 PBR 设置:

  1. 在主工具栏中,选择“材料编辑器”图标,如以下屏幕截图所示。 还可选择键盘上的 M 以打开编辑器。 “材料编辑器”有两种模式,可以在“模式”列表中进行选择:“密实材料编辑器”模式和“板岩材料编辑器”模式 。 由于此场景相对简单,我们将使用密实模式。

  2. 在材料编辑器中,你会看到许多球体。 这些球体就是我们的材料。 我们会将其中一项材料分配给场景中的每个对象(每个 box)。 若要分配材料,请先在主视区中选择一个对象。 然后选择“材料编辑器”窗口中的第一个球体。 将其分配给某个对象后,所选材料将突出显示,如下图所示。

  3. 选择“将材料分配给所选对象”,如下所示。 现在,该材料将分配给所选对象。

    显示如何分配材料的屏幕截图。

    在“材料编辑器”中,可以根据需要从多种材料类型中进行选择。 通常情况下,材料类型默认设置为“标准”。 此材料是基本材料,不适用于 PBR 设置。 因此,我们需要将材料类型更改为 PBR 材料。 物理材料是 Azure 远程渲染项目的首选 3ds Max 材料。

  4. 在“材料编辑器”中,选择“标准”选项卡。在“材料/贴图浏览器”中,选择“物理材料” 。 此操作将所分配的标准材料转换为 PBR 物理材料。

    显示如何更改材料的屏幕截图。

    在“材料编辑器”中,现在可以看到物理材料的属性,如以下屏幕截图所示。 现在可以开始为资产分配纹理。

    显示纹理列表的屏幕截图。

如你所见,有很多贴图和纹理可以添加到材料中。 对于本教程,我们仅在材料中使用五个纹理槽。

提示

最好正确命名材料,如前面的屏幕截图中所示。

生成纹理的方式可能因偏好设置或使用情况而异。 例如,你可能想要使用可应用于任何资产的平铺纹理。 或者,你可能需要项目或资产的特定部分具有自己的自定义纹理集。 你可能想要使用可以联机的通用平铺纹理。 还可在 Photoshop、Quixel Suite 和 Substance Suite 等应用中自行创建它们。

在开始分配纹理之前,需要考虑资产的纹理坐标 (UVW)。 在将纹理应用到模型上时,最佳做法是确保模型已进行解包。 (如果没有正确进行 UV 解包,纹理将不会正确显示。)这对我们的目标非常重要,因为我们打算在模型上使用环境光遮蔽 (AO) 贴图。 与 Maya 中的 Stingray 着色器不同,3ds Max 中的物理材料没有专用的 AO 纹理槽。 因此,我们会将 AO 贴图应用到另一个槽。 让它能够与其他纹理(例如平铺纹理)分开使用,我们将为它分配一个它自己的 UVW 贴图通道。

首先,将“解包 UVW 修饰符”分配给模型,如以下屏幕截图所示。

  • 在选定的对象属性编辑器中,选择“修饰符”列表。 在显示的下拉列表中,向下滚动并选择“解包 UVW”。 此操作会将解包 UVW 修饰符应用到资产。 显示如何选择“展开 UVW”的屏幕截图。

    将贴图通道设置为 1。 通常是在贴图通道 1 中执行主要的解包操作。 在本例中,对象已在无重叠纹理坐标 (UV) 的情况下进行解包。 显示已展开的纹理坐标 (UVW) 的屏幕截图。

接下来是创建第二个 UV 贴图通道。

  1. 关闭 UV 编辑器(如果它已打开)。 在“编辑 UV”菜单的“通道”区域中,将通道编号更改为“2” 。 贴图通道 2 是 AO 贴图的预期通道。

  2. 在“通道更改警告”对话框中,可以将通道 1 中的现有 UV“移动”到新的通道 2,或者“放弃”将自动创建新的 UV 解包的现有 UV 。 仅当计划为 AO 贴图创建与“贴图通道 1”中的 UV 不同的新 UV 解包时,才选择“放弃”。 (例如,如果要在通道 1 中使用平铺纹理。)在本教程中,我们会将 UV 从通道 1 移动到通道 2,因为我们无需编辑新的 UV 通道。

    注意

    即使你已将 UV 解包从贴图通道 1 复制(移动)到贴图通道 2,你也可以在新的通道 UV 中进行任何必要的编辑,而不会影响原始贴图通道。

    显示“通道更改警告”的屏幕截图。

创建新的贴图通道之后,我们可回到材料编辑器中的物理材料,并开始向其添加纹理。 首先,添加 AO 贴图,因为还有另一个步骤可以使其正常工作。 将 AO 贴图插入材料后,我们需要将其配置为使用贴图通道 2。

如前文所述,3ds Max 物理材料中没有专门用于 AO 贴图的槽。 因此,我们改为将 AO 贴图应用到“漫反射粗糙度”槽。

  1. 在物理材料的“通用贴图”列表中,选择“漫反射粗糙度”旁边的“无贴图”槽并加载 AO 贴图 。

  2. 在 AO 纹理属性中,贴图通道默认设置为 1。 将此值更改为 2。 此操作完成添加 AO 贴图所需的步骤。

    重要

    此步骤非常重要,当通道 2 中的 UV 与通道 1 中的 UV 不同时尤其如此,因为如果选择错误的通道,AO 将无法正确映射。

    显示如何分配 AO 贴图的屏幕截图。

现在,我们将法线贴图分配给 PBR 材料。 此操作与 Maya 中的过程有些不同。 法线贴图不会直接应用于凹凸贴图槽。 (3ds Max 物理材料中没有法线贴图槽。)相反,将法线贴图添加到法线贴图修饰符中,法线贴图修饰符本身插入法线槽中。

  1. 在物理材料属性(位于材料编辑器中)的“特殊贴图”部分,选择“凹凸贴图”旁边的“无贴图”槽 。

  2. 在“材料/贴图浏览器”中,找到并选择“法线凹凸” 。 此操作向材料添加“法线凹凸”修饰符。

  3. 在“法线凹凸”修饰符中,选择“法线”旁边的“无贴图” 。 找到并加载法线贴图。

  4. 请确保将该方法设置为“切线”。 (应默认为此设置。)如有必要,请切换“翻转绿色(Y)”。

    显示如何选择“正常凹凸”的屏幕截图。 显示加载法线贴图的屏幕截图。

正确分配法线贴图后,我们可以分配剩余纹理以完成物理材料设置。 过程很简单。 没有要考虑的特殊设置。 以下屏幕截图显示了分配给材料的一整套纹理:

屏幕截图显示了分配给材料的一整套纹理。

创建并设置 PBR 之后,接下来应考虑如何在场景中实例化对象。 将场景中的类似对象(如螺母、螺栓、螺钉和垫圈)进行实例化。 任何相同的对象都可以显著节省文件容量。 主对象的实例可以具有自己的缩放、旋转和转换,以便可以在场景中按需放置。 在 3ds Max 中,实例化的过程十分简单。

  1. 在主视区中,选择要导出的一个或多个对象。

  2. 按住 Shift 键并使用转换(移动)工具向上拖动资产。

  3. 在“克隆选项”对话框中,将“对象”设置为“实例”,然后选择“确定” :

    “克隆选项”对话框的屏幕截图。

此操作会创建对象的一个实例,它可以独立于父对象以及该父对象的其他实例进行旋转或缩放。

重要

在子对象模式下对实例所做的任何更改都会传输到对象的所有实例。 因此,如果要处理实例化对象的组件(如顶点和多边形面),请确保需要所做的任何更改都能影响所有实例。 请记住,任何实例对象都可随时成为唯一的对象。

提示

在场景中实例化时,最好在执行操作的过程中创建实例。 如果在操作完之后将副本替换为实例对象,会很麻烦。

在转到导出过程之前需要注意的最后一点是,你希望如何打包你的场景/资产来进行共享。 理想情况下,如果将资产传递给客户端或团队成员,你将希望他们能够尽可能顺利打开并查看资产。 因此,请务必使资产纹理路径相对于场景文件。 如果资产的纹理路径指向本地驱动器或绝对路径/位置,则在其他计算机上打开时,它们将不会加载到场景中,即使 .max 文件与纹理位于同一文件夹中也是如此。 使纹理路径相对于 3ds Max 即可解决此问题,该操作非常简单。

  1. 在主工具栏中,转到“文件”>“参考”>“资产跟踪切换” 。

  2. 在资产跟踪窗口中,你将看到已应用于“贴图/着色器”列中列出的 PBR 材料的所有或大部分纹理。

  3. 在“完整路径”列中,你将在相应纹理旁边看到纹理位置的文件路径(最有可能是它们在本地计算机上的位置路径)。

  4. 最后,你将看到一个名为“状态”的列。 此列指示是否已找到给定纹理以及是否已将其应用于场景。 它用以下术语之一来标记纹理:“正常”、“已找到”或“文件丢失” 。 前两个词表示已找到并已加载文件。 最后一个词表示跟踪器未能找到文件。

    显示“资产跟踪”窗口的屏幕截图。

你可能会发现,首次打开“资产跟踪”窗口时,并非所有纹理都列在该窗口中。 不过无需担心。 因为运行一两次路径查找过程通常即可找到所有场景纹理。 路径查找过程如下所示:

  1. 在“资产跟踪器”窗口中,按住 Shift 并选择“贴图/着色器”列表中的第一个纹理,按住 Shift 不松并选择列表中的最后一个纹理 。 此操作将选中列表中的所有纹理。 选定纹理以蓝色突出显示。 (请参阅前面的屏幕截图。)

  2. 右键单击此选区,然后选择“设置路径”。

  3. 在“指定资产路径”框中,选择纹理的本地路径并将其替换为 .\。 选择“确定”。

    “资产跟踪”窗口将更新,如以下屏幕截图所示。 此更新可能需要一些时间,具体取决于场景中的纹理数量以及场景大小。 显示更新的资产跟踪窗口的屏幕截图。

请注意,“完整路径”列现在是空白的。 这意味着场景不再在特定(绝对)位置查找相关纹理。 只要 .max 文件或相关的 FBX 文件与纹理位于同一文件夹中,就会始终找到它们。

注意

可能需要多次重复此过程来查找和解析所有纹理和路径。 不过无需担心。 只需重复此过程,直到对所有相关的资产进行了考虑。 在某些情况下,将找不到某些文件。 在这种情况下,只需选择列表中的所有资产,然后选择“删除缺失的路径”即可。 (请参见上图。)

FBX 导出

现在我们已经使纹理路径相关,可以继续执行 FBX 导出操作。 同样,此过程也很简单,可通过多种方式完成。

提示

除非要导出整个场景,否则最好选择仅导出所需的资产。 在资源密集型场景中,导出可能需要很长时间。

如果使用了 Turbosmooth 或 Open SubDiv 等修饰符,最好在导出之前进行折叠,因为它们会导致导出过程出现问题。 在对场景进行折叠之前,请务必保存场景。

  1. 在场景中,选择要导出的资产。 在主工具栏上,转到“文件”>“导出”>“导出所选” 。

  2. 在“选择要导出的文件”对话框中,键入或选择输出文件名。 在“另存为类型”列表中,选择“Autodesk (*.fbx)” 。 此操作将打开“FBX 导出”窗口。

重要

如果在场景中创建了实例,请务必在 FBX 导出设置中选择“保留实例”。

显示如何导出到 FBX 的屏幕截图。

请记住,有几种方法可以导出该文件。 如果打算在文件夹/目录中共享 FBX 及其纹理文件,则以下屏幕截图中显示的设置应可以正常工作。

如果不希望与 FBX 一起共享大型纹理文件夹/目录,可选择在 FBX 中嵌入纹理。 如果嵌入纹理,则整个资产(包括纹理)将添加到单个 FBX。 这样做会将导出内容合并为一个资产,但最终 FBX 文件要大得多。

重要

如果生成的 FBX 文件大于 2.4 GB,则 FBX 导出设置中指定的最低版本应为 2016 或更高版本。 (请参阅前面的屏幕截图。)较新版本具有 64 位支持,因此支持更大的文件。

  1. 如果要导出包含纹理的场景,请在 *FBX 导出窗口中,选择“嵌入媒体”。

  2. 选择其余设置,然后选择“确定”:

    显示 FBX 导出设置的屏幕截图。

    使用物理材料导出到 FBX 时,在 FBX 导出窗口中选择“确定”后,可能会看到以下警告:

    显示“材料导出失败”警告的屏幕截图。

    此警告通知你导出的材料可能与其他软件包不兼容。 因为物理材料与 Azure 远程渲染兼容,所以不必担心此警告。

  3. 选择“确定”完成该过程,然后关闭窗口即可。

结束语

一般而言,此类型的材料看起来更真实,因为它基于现实世界的光线物理原理。 它创造了一种额外的沉浸式效果,使场景反映出现实世界的特征。

后续步骤

你现在已知道如何为场景中的对象设置具有高级照明的材料。 你也知道了如何将对象导出为 Azure 远程渲染支持的 FBX 格式。 下一步是转换 FBX 文件,并在 Azure 远程渲染中将其可视化。