Retopo

在密集的雕刻模型之上建立干净的拓扑:poly pen、自动重拓扑、多边形组、对称和 UV。

一句话概括#

在一个密集的雕刻模型之上,构建一个高效、可用于动画的 mesh。这是把你做出来的东西,变成游戏或绑定系统真正能用的东西的那一步。

布局#

Retopo 的工具栏

Retopo,正在等待一个参考 mesh

菜单栏File · Edit · View · Tools · Selection · UV · Edge · Transform · Symmetry · Config · Plugins
工具栏打开、导入、导出、工具集,以及选择模式 Vtx · Edge · Face · Island,还有显示开关和 mesh 计数
左侧工具与场景:Creation(6 个)、Editing(4 个)、Topology(9 个)、Brush(6 个)、选择模式,以及场景 mesh 列表
中间视口
右侧属性:symmetry、polygroups、display、remesh & surface
状态栏当前工具、选择模式、重拓扑 mesh 的顶点数与面数,以及吸附是否开启

开始#

Retopo 打开时会显示 No reference mesh, import a mesh to start retopo(没有参考 mesh,导入一个 mesh 来开始重拓扑)。可以用 Send toSculpt 带一个过来,也可以 Load from Library。其余的一切都是画在那个参考对象之上的。

你在这里做什么#

手动绘制拓扑#

Retopo 视口:参考 mesh 之上的新四边形

Poly Pen 是默认工具,也是主力:点击放置顶点,四边形就会在它们之间生成。Snap to Surface 默认开启,让每一个新顶点都贴在参考 mesh 的表面上,而不是悬浮在旁边。

其余的创建和编辑工具覆盖了条带、循环边、圆形、网格,以及常见的移动/延伸操作。可以在任意适合的选择模式下工作:vertexedgefaceisland

或者让它自动帮你重拓扑#

属性面板:symmetry、polygroups、display 和 remesh 控制项

Remesh & surface,在属性面板里:

  • Target faces:你的目标面数预算。
  • Adaptive (curvature):把预算花在形状复杂的地方,而不是平均分配。
  • Field extract (beta):由流场引导的提取。
  • Auto Retopo:运行它。
  • Paint density / Clear density:在运行之前,用笔刷画出你希望多边形更密或更疏的区域,这样结果就会在脸部密集、后脑勺稀疏。
  • StrengthOffsetShrinkwrap 控制结果贴合参考对象的紧密程度。

先跑自动,再手动修正真正重要的循环边,通常比单独用任何一种方法都快。

对称#

X、Y、Z 三个轴,带一个阈值(默认 0.0010),决定一个顶点要多接近轴线才算是轴上。如果一条镜像的循环边没有被识别出来,就调高这个值。

多边形组#

命名过的、带颜色的面组。Assign selected to active group 会在你工作时把它们逐步建立起来。之后你能靠它们隔离、隐藏,以及给某个区域做 UV,而不必再重新手动选一遍。

显示#

四个开关决定你看到的是什么:High poly(参考对象)、Retopo mesh(你的新 mesh)、Wireframe,以及 Snap to surfaceHP opacity 会把参考对象淡化下去,让你的拓扑在它上面看得更清楚。

UV#

UV 菜单负责展开和排布:这一步必须先做,Pigment 才能画上任何东西,因为贴图总得有个落脚的地方。

展开前的检查#

Retopo 会在允许你展开之前先检查这个 mesh,并给出以下两句话之一:"Ready to unwrap, no blocking issue.(可以展开,没有阻塞性问题。)" 或者 "N blocking issue(s) fix before unwrapping.(有 N 个阻塞性问题,需要先修复才能展开。)"

旁边是三角形数量相对于你的预算的对比:"12 480 / 15 000",这样重拓扑要回答的两个问题,够不够干净够不够小,就都同时呈现在屏幕上,而不是等到流水线之后才被发现。

详解法线贴图烘焙器#

烘焙会把细节从高模参考对象,转移到重拓扑 mesh 的 UV 上。有四件事决定它是否有效:

Resolution细节更多,速度更慢,一个如实说明的取舍
Cage offset射线为寻找表面而行进的距离
Maps to bake法线贴图和其他各项,每次烘焙可单独选择
Progress会报告initializing,然后sampling normals,且可以取消

有两条警告值得完整读一遍,而不是直接点掉:

⚠️ "No UVs, baking object-space normals. Unwrap first for standard maps.(没有 UV,将烘焙对象空间的法线。要得到标准贴图,请先展开。)" 烘焙依然会执行;你得到的会是对象空间而不是切线空间的结果,大多数引擎不会直接拿它来用。先展开。

"AO sampling is slower, twelve rays per texel.(AO 采样更慢,每个纹素十二条射线。)" 环境光遮蔽不是同价位的又一个选项而已,要为它预留出时间预算。

可读写的文件#

原生格式.retopo
导入/导出.obj.glb.fbx

把工作发送到其他工作室#

产出一个干净拓扑的 mesh。接受高模和重拓扑 mesh。

下游:Pigment 为它贴图,Render 为它打光,Engine 让它可以被使用。

与他人协作#

Retopo 以文档方式同步:整个状态,做去抖动处理,再加上少量细粒度操作(工具切换、选择模式、设置项)。两个人同时编辑同一个 mesh,会有一方胜出;不如把这个模型分开来做。

限制与常见坑#

  • 没有东西可画意味着没有加载参考 mesh。先导入一个。
  • 顶点悬浮在表面之外:Snap to Surface 被关掉了。
  • Auto Retopo 到处都是均匀密度:打开 Adaptive (curvature),或者先画密度。
  • 对称忽略了轴附近的一个顶点:调高阈值。