# 刀削面材质：用 Substance 3D Designer 做一碗山西面

> 来自上海的材质艺术家 Chao Chang 用 Substance 3D Designer 把一碗山西刀削面做成了纯程序化材质：从削面形成的扁平带状面条、卤蛋与炸肉丸，到豆干和散布其间的牛肉块，最后单独制作一层汤底，在 Blender Cycles 中用高度置换与次表面散射完成渲染。

- 原文：https://www.interestcreator.com/daoxiao-noodles-material-substance-3d-designer/
- 站点：https://www.interestcreator.com/
- 发布：2026-10-22
- 更新：2026-10-22
- 分类：案例教程、图文教程、材质制作
- 标签：Blender、Substance 3D、Substance Designer、材质贴图、程序化

## 正文

![Substance 3D Designer 制作的刀削面成品俯视图，面条、卤蛋、肉丸、牛肉块与豆干浸在汤中](https://www.interestcreator.com/wp-content/uploads/2026/10/691b749f9760b.webp)


Substance 3D Designer 不只是做工业材质的工具——来自上海的材质艺术家 Chao Chang 就用它做了一碗山西刀削面，从面条到汤底全部程序化生成，最后在 Blender 的 Cycles 中完成渲染。

### 引言


大家好，我是 Chao Chang，一名常驻上海的材质艺术家，目前在一家游戏公司全职工作。大学时我主修数字媒体艺术，方向是游戏美术。2020 年毕业后我进入游戏行业，先做了两年 3D 模型师，之后转型为现在的材质艺术家。现在我在参与一款多平台开放世界游戏的开发。

我第一次接触 Substance 3D Designer，是大学老师给我看他用这款软件做的一个雨滴材质。当时我在课程里学到的工作流是：先建 3D 模型，在 ZBrush 里雕刻，然后拓扑、烘焙，最后手绘贴图。

当我第一次看到基于节点的做法能直接生成材质贴图，而且质量高、可调性又强，整个人都惊了。当时我只有一个念头：「这太酷了，我一定要掌握它。」

从那之后，我开始在网上找教程、利用业余时间研究节点组合，一点一点地学。过程常常枯燥，但我坚持了下来。每完成一个小练习，都会带来一点成就感，让我愿意继续走下去。

这件作品的动机，是想探索一个自己日常工作之外的主题。由于职业上主要做环境材质，我想挑战一点不一样的东西。那阵子我正在控制体重，一位山西老乡发来当地美食的照片。这给了我灵感：既然吃不到，那不如把它做出来。

第一步当然是收集参考。好在食物特写照片在网上比较容易找到，我甚至找到了一些山西刀削面的制作教学视频，从里面截取了几个关键的削面步骤作为视觉参考。

![山西刀削面的配料参考照片，包含面条、卤蛋、肉丸、豆干与牛肉块](https://www.interestcreator.com/wp-content/uploads/2026/10/691b50e9eaaa0.webp)



### 刀削面的配料


我的整体思路是先做一张完整的高度图，把面条和配菜都包含进去。然后用各自的遮罩一步步上色，接着做对应的粗糙度贴图。法线贴图则直接用节点从高度信息中提取。

然后进入制作流程。开始之前，我想起 Daniel Thiger 有一个关于面条的教程，但太久没看，细节已经记不清了。于是我又看了一遍，吸收其中做面条的技巧，并在他的方法基础上做了适当的修改。

为了保留面条被刀一片片从面团上削下来这一特征，我把它的形状改得更扁平，并保留了表面的隆起痕迹。随后我把面条分成底层、中层和顶层，模仿层与层之间相互挤压的效果。

我用 Perlin Noise → Directional Blur → Quantize Grayscale → Edge Detect 这一组合提取出面条的基本形状，再在这个基础上做一些基础的 Warp 调整。最后，我复制了几组节点，给每一组引入变化，一层层叠起来。

![用 Perlin Noise、Directional Blur、Quantize Grayscale 与 Edge Detect 提取面条基础形状的节点组合](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6123adff7.webp)



![复制多组节点、逐个引入变化再逐层叠加的面条节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b614065633.webp)



![面条基础形状的灰度噪声图，用于后续提取条状结构](https://www.interestcreator.com/wp-content/uploads/2026/10/691b622956e9c.gif)



![面条分为底、中、上三层相互挤压的分层遮罩](https://www.interestcreator.com/wp-content/uploads/2026/10/691b642c855c9.gif)


面条做完之后，我决定再加一些配料。我认为卤蛋、炸肉丸和豆干是不可或缺的三样。鸡蛋基本上就是一个椭圆形，一端比另一端略大。在参考照片里可以看到，它的高光区域并不是平滑反射。

裂开受力后还会出现一些纹理图案与小裂纹。把这些元素加上去，一颗卤蛋就完成了。（至于为什么不做切开的蛋，虽然那样可能更有表现力，只因为我平时的吃法里不常见，而不是偷懒。）

![3D 渲染的卤蛋基础形态，是一端略大于另一端的椭圆](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6439145c7.gif)



![制作卤蛋的 Substance 3D Designer 节点组合](https://www.interestcreator.com/wp-content/uploads/2026/10/691b649c3a5a9.webp)


接下来是炸肉丸。开始之前，我想起不久前看过的 Ezequiel Delaney 的肉团教程，虽然细节记不全，但我知道里面有我需要的灵感。

于是我把它找出来，重看了前面做肉丸的部分。虽然不能照搬，但它的方法论与工作流是很棒的参考，我可以按自己的需求做调整。

我先做出基本形状，再分两层由大到小堆出质感，逐步给肉丸加入变化。最后在与面条整合时，我整体调整了 Levels，确保它们能稳稳地坐在面条上。

![卤蛋表面带纹理与小裂纹的高度图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b654155b60.gif)



![在卤蛋表面添加纹理图案与小裂纹的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b65727e1b8.webp)



![炸肉丸表面的颗粒噪声图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b65b709d14.gif)



![由大到小分两层叠出肉丸颗粒感的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b65fb25989.webp)



![牛肉块的节点组合与肌肉纤维叠加](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6631d1b97.webp)


下一个想加的配料是豆干。它是把豆浆凝固压制成型的，所以基本形态相当规整。为了在制作时更好地表现高度，我用 Height Extrude 节点模拟它从一块平的长方形变成三维形态的过程。

两端亮度的变化也很好地模仿了它半浸在面汤里的效果——一部分露在上面，一部分埋在下边。最后我加了一些压模过程中形成的表面细纹，就基本完成了。

![用 Height Extrude 节点把平面矩形挤成豆干三维形态的黑白高度图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b668abe9a5.gif)



![制作豆干的节点组合，包含压模形成的表面细纹](https://www.interestcreator.com/wp-content/uploads/2026/10/691b66b6a387a.webp)


接着，给面里加些肉块。我选择做牛肉块，因为肌肉纤维更容易表现（虽然真实的卤肉可能并不是这样）。我先用一个 Cube 3D 打好结实的基础形状，加上一些扭曲变化，再叠一层 Cell Map 模拟肌肉纤维的质感。

最后我用 Shape Splatter 把肉块散布到面条之间（同时用遮罩限定分布区域，避免与之前放好的卤蛋、肉丸等元素过度重叠）。

![以 Cube 3D 为基底、加入扭曲变化后的牛肉块基础形状](https://www.interestcreator.com/wp-content/uploads/2026/10/691b683a1d3ad.gif)



![用 Cell Map 模拟牛肉肌肉纤维的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b689cb8690.webp)


分布时可以用几个 Shape Splatter 节点，逐步加入肉块。这样一步步来，对最终的摆放位置控制得更好。

![面条上卤蛋、肉丸与牛肉块的高度渲染效果](https://www.interestcreator.com/wp-content/uploads/2026/10/691b690dbfc25.gif)



![用 Shape Splatter 把配菜散布到面条上的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b693bd7dfe.webp)



### 制作汤底


面条部分到这里就结束了，接下来开始做汤。我最初的想法是用一个 Water Level 节点，但很快就发现这不是最好的做法。我决定单独做一套汤底材质，在后面的渲染阶段再合成。

概念其实很简单：一层半透明液体的平面，上面浮着一层细密的油脂，再点缀几片香菜叶和葱花。

![用来模拟牛肉肌肉纤维的黑白 Cell Map 图案](https://www.interestcreator.com/wp-content/uploads/2026/10/691b699238d7a.gif)



![逐层加入牛肉块的 Shape Splatter 分布节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b69bda8112.webp)



![肉丸表面颗粒分布的灰度图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6af140461.gif)


为了让油脂效果更真实，我在 Color、Roughness、Specular 与 Translucency 通道上都对油脂层做了针对性调整，而不是严格遵循标准的 PBR 流程。

![标出香菜叶与葱花位置的分布图，橙色底上散布着绿色小点](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6b82b1657.gif)



### 渲染


所有贴图准备好之后，就进入渲染阶段。按照组长的建议，我用 Blender 的 Cycles 做最终呈现。这是我第一次用 Blender 渲染，一开始觉得有点难，还去查了一些入门教程来掌握基础。

好在现在的教学视频非常多。理解了材质着色的基本原理之后，我就能开始连一些简单的节点并调整结果了。

我把场景保持得很简单，只用了几个基础模型：一张桌子、一个碗，以及两个高模圆形平面。我打算直接用高度置换来做出面条模型（保持 X、Y 轴一致，只在 Z 轴上有轻微变化）。

下面的圆形平面赋予面条材质，另一个赋予汤底材质。然后在着色器里把高度贴图接到置换输入上，让平面根据高度信息产生形变。

![3D 场景中用一块平面承载汤底材质的搭建效果](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6bd58add5.webp)



![汤底材质的节点组合与渲染预览](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6be34e8e9.webp)


现在正式进入着色器界面。我把所需的贴图与几张遮罩都导了进来（把遮罩也导进来，是为了能在着色器里直接调整肉丸、香菜叶这类简单元素的颜色和粗糙度，不用在两个软件之间来回切换）。

![Blender 着色器中基础贴图（红框）与颜色、对比度调整（黄框）的节点](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6c2687420.webp)


（红框里是基础贴图，黄框里是颜色、对比度之类的调整。虽然看起来有点乱，但底层逻辑相当直接。）

我用的是 Principled BSDF 着色器，大部分贴图都可以直接接进去。对于这套材质，在接好基础色、法线、粗糙度与高度置换之后，一定要试着打开次表面散射（Subsurface Scattering）。

它会显著提升材质的整体表现，尤其是让肉丸、牛肉块和豆干看起来更融合，像是吸饱了汤汁一样。

![用 Principled BSDF 连接颜色、法线、粗糙度与高度置换的节点连线](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6e67dda85.webp)



![Blender Cycles 渲染的刀削面成品，面条与配菜细节完整](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6e8bb79b4.webp)


做汤底着色器时，流程与面条大体相同。我把基础贴图接到 Principled BSDF 上，并开启次表面散射。

在此基础上，我又额外用了一个 Translucent BSDF 着色器，并用 Mix Shader 节点把两者混合。我不太确定这个做法在物理上是否完全正确，但在渲染预览里效果更可信，所以就用了。

![汤底着色器：Principled BSDF 搭配 Translucent BSDF，再用 Mix Shader 混合的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6ec8e796f.webp)



![Blender Cycles 渲染的刀削面近景，面条与配菜细节清晰](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6ee816b90.webp)


灯光方面我没有做特别处理，只是设了一张 HDRI 环境贴图和一盏点光。最后我在渲染属性里试了不同的色彩管理设置，挑出视觉上最合适的一种。以上基本就是我在 Blender 里做的全部步骤。

![在渲染属性中试验不同色彩管理设置的界面](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6f5358b31.webp)


最后我想分享一个在制作过程中花了不少时间思考与测试、但最终没有用在作品里的方案。山西刀削面与普通面条不同，它是用特制刀片从面团上一片片削下来的，形状是扁平的带状而不是圆的。这会带来复杂的自然扭转与堆叠，是我在制作初期遇到的第一个大难题。

和同事讨论之后，我了解到用 Spline 工具或许能模拟出这种效果。但在实际实现时我发现，这个方法做少量单根面条也许不错，一旦数量大起来或需要平铺，就会出问题。

复杂的交叉与难以控制的高度变化会让后续流程变得麻烦，得大量使用 SVG 遮罩去修正，进一步调整也很不方便。

另外，在测试阶段我发现变化太多反而让面条显得过于凌乱，渲染结果并不好看。即便如此，我依然认为这是一个值得分享的思路，尽管它最终没有进入渲染成片。

![最终渲染的刀削面成品俯视图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6fa2866ed.webp)



![用 Spline 工具模拟面条自然扭转堆叠的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6fb460375.webp)



![Spline 方案中组合节点生成面条的试验](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6fe1bd46e.webp)



![Spline 方案里处理面条分布与交叉的节点图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b6ff995175.webp)



![Spline 方案中用于生成面条的三维曲线视图](https://www.interestcreator.com/wp-content/uploads/2026/10/691b706d601c7.gif)



### 结语


总而言之，一碗看起来简单的面，真正动手做起来往往和最初设想很不一样。只有亲自做，才会遇到真正需要解决的问题，才会发现无数意想不到、需要反复调试的细节。即使在最后的渲染阶段，你也会经常回到工程文件里重新调整。

学教程的时候，不必逼自己记住每一个细节，只要在心里记下每个技巧出彩的地方就好。单单这个印象，以后也许就能帮你跨过类似的难关。然后根据自己的实际需求，把那些方法适当改造，融进自己的工作里。

对新手来说，我的建议是多看教程，但更重要的是看完之后真的动手做。给自己定一些够得着的目标，完成它们带来的成就感会让你保持动力。接着回顾自己的作品，找出可以改进的地方，再进入下一个挑战。

更多材质制作拆解可以查看本站 [案例教程](https://www.interestcreator.com/case-tutorial/) 分类；

想了解同一套软件做食物材质的思路，可以看 [小熊软糖材质：Substance 3D Designer 的 SDF 流程](https://www.interestcreator.com/haribo-jelly-bear-candy-material-substance-designer/)，想了解这套节点流程所在的软件版本，可以参考 [Substance 3D Designer 16.0 发布：3D 散布 + SDF 建模 + OpenPBR](https://www.interestcreator.com/substance-3d-designer-16-sdf-openpbr/)。
