在这个转台摄影测量基础系列教程中,我将向大家演示如何把原始高模重建结果中的颜色信息转移到在 Blender 中获得的低模对象上。
本教程的视频版本目前尚未提供该语言版本。您可以在下方观看带字幕的英文版视频;视频下方提供了翻译成中文的文字稿。
视频文字稿
大家好!在这个转台摄影测量基础系列教程中,我将向大家演示如何把原始高模重建结果中的颜色信息转移到在 Blender 中获得的低模对象上。
这个过程称为烘焙(Baking)。在本期教程中,我们将利用它把高模几何体上的 Base Color Texture 重新映射出来,以便将这张纹理应用到低模对象上。低模对象拥有自己独立的 UV 展开,与高模几何体的 UV 不同。
在 Meshroom 中,要对外部对象执行烘焙,我首先需要创建一个新的 Texturing 节点并将其插入处理流程中。具体做法是复制原始节点,选中它后按下 SHIFT D。

在新的节点中,我需要移除 Mesh 输入端口的连接,因为我将使用上一期教程结束时从 Blender 导出的低模对象作为外部几何体,并将 Meshroom 为原始高模版本生成的纹理映射到该几何体上。删除连接的方法是在连接线上右键单击,然后从弹出的菜单中选择 Remove。
现在需要在新的 Texturing 节点设置中配置一些参数。首先是 Mesh 字段,我需要将从 Blender 导出的低模文件路径复制到这里。
纹理分辨率可以根据需要自由设置。我建议保留默认值 8192,以维持较好的质量,因为这张纹理后续还会继续进行处理。
还可以为生成的几何体和纹理选择不同的文件格式。例如,我将网格格式设置为 FBX,将图像格式设置为 PNG。最后,我会关闭用于纹理生成的 UDIM 模式。

为了将高模网格中的细节烘焙出来,我需要在节点的 Ref Mesh 字段中指定高模对象的路径。
输入该路径后,将会出现生成 Normal Map 和 Displacement Map 的选项,它们用于存储高模几何体的细节信息。我在 Bump Mapping 部分将 Normal Map 的格式设置为 PNG。Displacement Map 仅支持 EXR 格式,因为这种贴图的数据需要以更高的位深度进行存储。
现在只需要保存项目并点击 Start。由于从上一次执行后我没有修改其他节点,因此只有新的 Texturing 节点会被处理,所以这次计算不会花费太多时间。
处理完成后,生成的纹理图像会保存在磁盘上项目 Cache 目录中的 Texturing 文件夹内一个新的子文件夹中。正如大家所看到的,通过这种方式生成的 Normal Map 呈现出明显的分面效果,尽管从 Blender 导出的低模几何体已经启用了 Smooth Shading。

我没有在 Meshroom 中找到有效的解决方案来修复这个问题,包括尝试使用其他处理节点,或者从 Blender 导出时启用 Smoothing Groups,都没有成功。不过这并没有让我太在意,因为将 Normal Map 从高模版本烘焙到低模版本,在 Blender 或 Substance Painter 中都可以轻松完成。
对我来说,这个流程结束后真正重要的是新的 Base Color Texture。它是基于我为低模对象创建的 UV 展开重新生成的。与 Meshroom 最初生成的纹理相比,这张纹理后续编辑起来会更加方便。你们可能在之前某一期教程中已经短暂见过那张原始纹理。

此外,Meshroom 有时不会为 Base Color 生成单独一张 EXR 贴图,而是生成多张纹理,并将它们关联到多个子材质上。这会导致在外部软件中将它们烘焙为单张颜色纹理变得比较困难。在这种情况下,将 Base Color 烘焙到低模版本上会省去很多麻烦,因为这里在 Meshroom 中的低模对象只使用一个 Material。
最后,在这个阶段我们只保留新的 PNG 格式 Base Color Texture。下一期教程中,我将向大家演示如何在 Substance Painter 中烘焙 Normal Map,以及如何设置基础的 PBR 材质。下期见!