All tutorials

完整的3D流水线,从头到尾

Advanced 45 min

让一个asset从一个空白球体,历经Sculpt、Retopo、Pigment、Render和Engine,最终变成一个可玩的场景,全程无需手动导出任何一个文件。

你将学到什么#

你将在一次会话中,让一个asset走完整条3D流水线:SculptRetopoPigmentRenderEngine。重点不在于任何一个单独的模块,而在于这个asset始终没有离开应用,你也始终不需要手动管理任何文件。

本教程假设你已经完成了前面五篇。它节奏较快,重点放在模块之间的衔接处,因为流水线通常就是在那里断掉的。

开始之前#

  • 本系列前面的五篇教程。
  • 这条链上的五个模块都是通过众筹解锁的模块。只有InkwellVectraPDF Studio是免费的。
  • 浏览器支持情况并不统一,开始之前值得了解:RetopoPigment运行在WebGL上,SculptEngine优先使用WebGPU并回退到WebGL,而Render则直接要求WebGPU。
  • 留出一段不被打断的时间。这条流水线值得一口气从头看到尾。

这条链#

Sculpt  →  Retopo  →  Pigment  →  Render
                            ↘
                             →  Engine

每一个箭头都是一次Send to操作。一个模块只能发送给接受它这种asset类型的模块,这也是为什么菜单里始终只会出现有效的目标。

步骤#

  1. Sculpt中做出asset的大形。先轮廓,再大的形体,最后是棱线。在你想要添加精细细节之前就停下:第5步的烘焙会承担这部分工作,而在一个即将被重拓扑的雕刻上打磨细节,等于把时间花了两遍。

  2. 使用Send to Retopo。高模会作为参考表面到达。没有任何东西被导出,也没有任何东西落到你的硬盘上。

  3. 用一个较低的目标值运行Auto Retopo,然后手动修正它做错的地方。离开前检查UV。这是之后最常白白丢掉一个小时的地方。

  4. 使用Send to Pigment,并保留雕刻模型。你马上就会用到它。

  5. 从高模向低模烘焙:normal、ambient occlusion、curvature、thickness。这一刻,两个mesh的存在才有了意义,也正是这个衔接点,让整条流水线变得值得跑一遍。

    **警告:**如果你在第3步之后删除了雕刻模型,就无法再烘焙了。那些细节没有办法从轻量mesh中恢复出来。

  6. 搭建材质:用一个填充图层作为基础,用生成式遮罩处理边缘磨损和污渍,只在生成器无法推断出你想要的效果时才手绘。

  7. 分支处理。用Send to Render制作展示图像,或者用Send to Engine把asset放进一个可玩的场景。大多数asset两条路都会走,而且两者都是从同一个已贴图的mesh开始的。

  8. Render中,设置一张HDRI,旋转它直到形体清晰可辨,再添加一盏主光来塑形。渲染,并保存场景,让下一个asset能复用这套设置。

  9. Engine中,放置prop,添加一个Collider,如果它应该移动就再添加一个Rigidbody,然后按下Play

  10. 闭合这个循环。在Scene Graph中右键点击prop,用Edit inSculptPigment中打开它,做出修改,然后看着它回到场景中。正是这一点,让这条流水线成为一个循环,而不是一条单行道:你可以就在发现问题的地方,直接修好这个asset。

  11. 在每个阶段都用Save to Cloud保存。项目会跟随你的账号,而不是绑定在某一台机器上。

结果#

一个asset,五个模块,零手动文件管理。更重要的是,你现在有了一个循环:当prop在游戏场景里看起来不对时,你就直接在游戏场景里把它修好,修改会传播回去。

进一步探索#

  • 用一个更难的对象再跑一遍这条流水线,比如一个有硬表面和机械细节的东西,而不是一个有机形态。
  • 引入Matter,从一张参考照片生成PBR通道,再把它们送进PigmentEngine
  • 用地形编辑器围绕prop搭建一个场景,再用Sky & Atmosphere给它打光。
  • Pulse添加声音,并在Fusion中剪辑一段展示视频。