在本教程中,我们将学习如何在 Substance Painter(2019 版本)中,使用画笔在材质的蒙版上绘制缝线效果。该材质将只启用 Height 通道,从而让我们能够模拟凸起的细节。


本教程不提供中文配音。您可以在下方观看英语配音的视频,并选择中文、英文或其他语言的字幕。视频下方提供了翻译成中文的文字稿。


视频文字稿

大家好!在本教程中,我们将学习如何在 Substance Painter(2019 版本)中,使用画笔在材质的蒙版上绘制缝线效果。该材质将只启用 Height 通道,从而让我们能够模拟凸起的细节。

实际上,本教程将同时涵盖两个主题:

如何使用 Height Map 模拟凸起细节。在本例中,我们将使用统一的最大高度值。

如何使用画笔为 Material 或 Layer 定义不透明度蒙版。

在本教程中,我将展示一个非常具体的应用案例,使用 Substance Painter 自带的一种画笔来快速创建一系列缝线或接缝。不过,这种技术同样适用于许多不同类型的画笔,可用于实现各种效果。这里展示的只是其中一个示例。

我创建了一个新项目,使用的是“PBR Metallic Roughness (Allegorithmic)”模板和一个皮带的 3D 模型。具体来说,我通过蒙版以及“UV Chunk Fill”选择模式,将两种不同的 Substance Material 应用于模型的不同部分。这部分内容我已经在之前发布的视频教程中演示过,因此这里不再重复介绍。

作为说明,皮带扣使用的是 Substance 自带的“Cobalt pure”材质,而皮带本体使用的是“Artificial leather”材质,两者都保持默认参数不变。

现在,在 Layers 面板中对象材质堆栈的顶部,添加我们准备用于缝线的 Material。

材质的选择显然取决于具体情况。这不仅适用于当前示例,因为这种技术在许多不同场景下都有效。在这里,我使用的是 Substance 的“Fabric”分类中的一个 Material。在 Shelf 的 Materials 标签页搜索框中输入 Fabric,然后从显示的材质中选择一个。

该 Material 可以通过修改其参数来自定义,例如在 Properties - Fill 标签页中调整颜色或基础颜色。

此时该 Material 会应用到整个模型表面,这显然不是我们想要的效果。因此这次我们将采用另一种方式。我们会创建一个文件夹,其中同时包含 Fabric Material 和用于生成实际凸起细节的 Height Fill Layer。稍后,我们会为文件夹创建蒙版,而不是分别为各个 Layer 创建蒙版。这样就能一次性将蒙版应用到所有 Layer。

右键点击 Fabric Material,在弹出的菜单中选择“Group Layers”。

接着点击 Layer 面板顶部的“Add a Fill Layer”,创建一个基础 Fill Layer。在 Properties - Fill 标签页中,关闭除 Height 之外的所有通道。

然后修改 Height 参数,例如设置为 0.2。

此时屏幕上不会看到任何变化,原因很简单:当前效果被应用到了整个模型表面。要观察到效果,我们需要将其限制在缝线区域。

将刚刚创建的 Fill Layer 拖入之前创建的文件夹中。

右键点击包含 Height Fill Layer 和 Fabric Material 的文件夹,然后从菜单中选择“Add Black Mask”。

选中该蒙版,然后点击位于 Tools Toolbar 中的 Paint 工具。该工具通常位于主菜单下方。

使用默认设置时,我们应该已经能够在模型上进行绘制。更准确地说,是在该层的蒙版上绘制。此时使用的是边缘柔和且颜色为纯白的画笔。这意味着我们会在画笔经过的位置向蒙版绘制白色,从而显示文件夹内部包含的材质。

画笔可以在 Shelf 的 Brushes 分类中找到。我不会在这里逐一介绍所有画笔,但建议大家自行尝试,并在 Properties - Paint 标签页中修改其参数。这里有很多参数,而且大多数都非常直观。主要参数包括:

Size:画笔尺寸。

Spacing:当按住鼠标拖动时,相邻画笔元素之间的间距。稍后我们会结合缝线效果来看一个实际示例。

Angle:画笔图案的旋转角度。对于没有明显方向性的画笔,例如“Basic Hard”等,这个参数的视觉影响很小;但对于缝线画笔等具有方向性的画笔,其效果就会非常明显。

Grayscale 参数通常位于面板靠下的位置,它允许我们指定应用到蒙版上的灰度值。很容易理解,当该值设为 0(黑色)时,就会向蒙版绘制黑色,从而移除对应区域的效果。因此我们可以将画笔当作橡皮擦使用。

通过右键点击蒙版并选择“Add Black Mask”来清除所有画笔笔触。然后让我们进入本教程的核心内容:缝线效果。

在 Shelf 的 Brushes 分类中,在搜索框输入 Stitches 以筛选相关画笔。默认情况下,Substance Painter 应该会显示五种具有该特性的原生画笔。列表中的第一个画笔就完全能够满足需求。双击将其选中。

在模型表面点击并拖动画笔即可创建缝线。现在应该已经很清楚,我们绘制的并不是 Material 本身,而是包含 Material 和负责生成凸起细节的 Fill Layer 的文件夹蒙版。

基础画笔参数允许我们调整缝线的尺寸以及各个缝线段之间的间距。不过,在这种弯曲几何体表面上直接绘制并不是特别方便。

让我们切换到 2D 视图,显示模型的 UV 布局,并直接在其上进行操作。由于模型被展开到一个平面的二维空间中,而且该皮带的 UV 布局已经正确制作,带身部分保持为直线,因此这种方式会方便得多。

如果使用下面这个快捷操作,会更加高效:首先在缝线起点处单击鼠标左键并立即松开。然后按住 SHIFT,拖出一条线,最后在终点位置单击鼠标左键,再同时松开 SHIFT 和鼠标。

我们刚刚绘制出了一条直线。对于其他缝线,也可以使用同样的方法,从而避免在直线区域进行徒手绘制。

还有一个技巧。在按住 SHIFT + CTRL 的同时拖动,并在结束时单击鼠标左键,可以启用角度吸附绘制。默认情况下,吸附增量为 22.5 度,因此能够在这个模型的 UV 布局上绘制出完全笔直的线条。

正如我们所看到的,Properties - Paint 标签页中包含大量参数。其中一些参数允许我们在画笔元素之间加入随机性,例如随机改变尺寸或旋转角度。不过这些内容我将在未来的教程中结合实际案例进行介绍。对于本次以缝线为主题的教程而言,理解我们已经讨论过的参数就足够了:Size、Spacing 和 Angle,并且全部使用固定值,不启用随机性或其他附加效果。

如果在绘制缝线时出现错误,也不必担心。

蒙版本质上只是一个灰度图像。正如我们已经看到的,它可以使用黑色或白色画笔进行编辑。因此,无论是在 2D 视图还是 3D 视图中,我们都可以选中文件夹的 Layer Mask,选择类似“Basic Hard”这样的硬边画笔,将颜色设置为黑色,然后覆盖错误区域进行修正。

这些修改会同时影响文件夹中的所有 Material 和 Layer,因此无需逐个进行修正。

文件夹还可以进行嵌套,其蒙版也会随之嵌套。例如,我们可以通过右键点击当前文件夹并选择“Group Layers”,将其放入另一个文件夹中。

此时,我们可以为外层文件夹定义新的 Layer Mask,并且采用不同的方式。例如可以使用 UV Chunk Fill,或者由于当前模型支持这种方式,也可以使用 Mesh Fill。Mesh Fill 能够选择相互连接的几何体,即使它们位于不同的 UV Island 中。这样我们就可以只选择皮带部分。

这样一来,我们可以先对受影响区域进行较大范围的初步选择,然后利用内部文件夹和 Layer Mask 进行更精细的控制。同时,这也是防止缝线被错误应用到其他区域的一种有效方法。

将 Material 和 Layer 放入文件夹中,并将作用范围的控制交给文件夹蒙版,可以在后续调整 Material 参数时获得极大的灵活性。例如现在,我们可以打开 Fill Layer 修改 Height 数值,或者改变 Material 的颜色及其他参数,而无需担心控制其应用范围的蒙版。蒙版定义在文件夹层级,因此会自动影响其中所有内容,就像我们之前修正错误时看到的那样。

在本教程中,我们学习了不少内容:

如何将多个 Layer 和 Material 组织到同一个文件夹中,甚至嵌套到多个文件夹中,并通过为文件夹定义 Layer Mask 来统一控制多个效果的应用范围;

如何创建仅影响 Height 通道的 Layer,从而生成具有统一强度的凸起细节;

如何使用画笔在 Layer Mask 上进行绘制,以及 Properties - Paint 标签页中主要画笔参数的基本作用;

如何利用 Substance Painter 专门的缝线画笔创建缝线效果,包括在 2D 视图中直接基于 UV 布局绘制完全笔直的接缝,并结合吸附快捷操作提高效率。

和往常一样,欢迎大家在 YouTube 视频评论区留下问题、意见或教程建议。下次见!

搜索教程

输入短语,或输入多个用逗号分隔的关键词进行搜索。

本站提供 Francesco Milanese 制作的 3D 模型、教程及计算机图形相关资源。3D 模型的使用许可可通过各模型页面上的链接前往第三方商店购买,并须遵守适用的许可条款。 Francesco Milanese — 意大利增值税号:06321250877。 联系方式:info@francescomilanese.com


高级隐私策略信息和cookie文件的使用