编辑 UV > 展开(Edit UVs > Unfold)

 
 
 

通过“展开”(Unfold)功能,您可以展开多边形对象的 UV 网格,同时尽量确保 UV 不重叠。展开 UV 有助于优化 UV 坐标的位置以便它们更准确地反映原始多边形网格,从而最大程度地减小有机多边形网格上纹理贴图的扭曲。

例如,如果 UV 的初始形状导致曲面网格上的纹理图案扭曲,则可以使用“展开”功能最大程度地减小扭曲,因为它会尝试保持 UV 相对于原始曲面网格的关系。

相关主题

编辑 UV > 展开(Edit UVs > Unfold) >

下面介绍的是“展开选项”(Unfold Options)窗口中的选项。

权重解算器朝向(Weight solver towards)

用于确定两种展开解算器类型(局部和全局)之间的权重的偏移设置。

“权重解算器朝向”(Weight Solver towards)设定为 0(默认值)时,使用局部解算器进行展开计算。

“权重解算器朝向”(Weight solver towards)设定为 1 时,使用全局解算器进行展开计算。

“权重解算器朝向”(Weight solver towards)设定为介于 0 和 1 之间的任意值时,展开结果基于组合解算器计算。

对于大多数展开操作,建议将“权重解算器朝向”(Weight Solver towards)设置设定为 0,这样可以最快地提供结果。

一些多边形配置可能会导致“展开”功能对展开结果产生意外的锥化效果。例如,因局部解算器在展开 UV 时的工作方式,角色的裤腿上从大腿到踝部的锥化形状可能会导致锥化更加夸张。发生这种情况时,通常可通过以下方式改进结果:通过将“权重解算器朝向”(Weight solver towards)设置设定为大于 0 的值(以便将全局解算器考虑在内)来执行其他展开操作。展开操作花费的时间会长很多,但是将减弱锥化效果。当比例更均匀时,您可以仔细地固定 UV 以控制先前采用其他比例的区域,以确保它们不会还原。固定 UV 后,可以通过将“权重解算器朝向”(Weight solver towards)设置设定为 0 来执行后续展开操作。

有关该选项如何发挥作用的示例,请参见解算器权重设置示例

对原始优化(Optimize to original)

指定对展开操作使用哪种多边形比较方法。该设置仅在“权重解算器朝向”(Weight solver towards)设置大于 0 时可用,并且可以设定朝向两种比较方法的偏移:

面区域(Face area)

通过将各个 UV 的区域与多边形网格的原始面进行比较来比较多边形。

边长(Edge length)

使用一种将 UV 边的长度与原始多边形的面边进行比较的方法。

如果“面面积/边长偏移”(Face area/Edge length bias)设置设定为 0.5(默认值),则在确定最终结果时这两种比较方法具有相等的权重。一般来说,对于大多数展开计算,这是不错的起点。

如果设定朝向面区域的偏移,具有高曲率区域的多边形网格可能具有更好的展开结果。该设置可最大程度地减小曲率区域中纹理贴图的弯曲。但是,如果设定的偏移设置完全朝向面区域,则可能会因尝试在面区域偏移指定的约束内进行计算而导致纹理上出现斜切效果。

固定(Pinning)

使用下列选项可以仅展开 UV 壳的选定部分。

固定 UV 边界(Pin UV border)

在展开操作期间保持 UV 在多边形壳的边界边上的位置。如果您希望壳的边界边不受展开操作影响,请使用该选项。

固定 UV (Pin UVs)

允许您执行“展开”操作,但固定特定 UV 组合。

固定选定 UV (Pin selected UVs)

在展开操作期间仅保持选定 UV 的位置。

默认情况下,在展开操作期间,“展开”会重新定位所有选定 UV,未选定 UV 保持固定状态。该选项会反转默认行为。如果特定 UV 展开后已位于所需图案中,并且您需要一些 UV 不受后续展开操作的影响,则该选项可能非常有用。

固定未选定 UV (Pin unselected UVs)

在展开操作期间仅保持未选定 UV 的位置。这是默认设置。

启用该选项时,在展开操作期间,“展开”会重新定位所有选定 UV,未选定的 UV 保持固定状态。

展开约束(Unfold constraint)

指定展开时如何对展开 UV 进行约束。

无(None)

在展开操作期间,UV 在任意方向上自由地展开。

垂直(Vertical)

“UV 纹理编辑器”(UV Texture Editor)中显示时,UV 在垂直方向上受约束。

水平(Horizontal)

“UV 纹理编辑器”(UV Texture Editor)中显示时,UV 在水平方向上受约束。

最大迭代次数(Maximum iterations)

指定在未达到“停止阈值”(Stopping threshold)的情况下,计算最终展开结果时允许展开解算器执行的最大重复计算次数。达到该最大次数时,展开计算将停止。

提示

可以随时通过按 键停止展开计算。

如果计算似乎过早停止,只是表示已达到“停止阈值”(Stopping threshold)。默认值为 5000。设定的“最大迭代次数”(Maximum iterations)大于 5000 时,会导致“展开”功能进一步执行计算,直到达到“停止阈值”(Stopping threshold),并且会延长展开计算的时间。

如果“权重解算器朝向”(Weight solver towards)设定为大于 0 的任何值,则您可能希望开始时将“最大迭代次数”(Maximum iterations)设定为较小的值,如设定 50 作为初始展开迭代。

停止阈值(Stopping threshold)

指定停止展开计算的数学阈值。在原始多边形网格和展开结果之间比较角度、距离和区域时,该值基于整体改进的内部计算的相对百分比。展开计算将继续进行,直到达到该百分比阈值,或者直到达到“最大迭代次数”(Maximum iterations)设置指定的最大迭代次数。

设定小于 0.001 的值将导致展开时花费较长的时间。如果时间不是问题,还可以将“停止阈值”(Stopping threshold)设定为 0,允许“展开”功能计算最佳结果。

重缩放(Rescale)

展开计算完成后,调整每个最终的展开 UV 壳,以匹配“比例因子”。可通过以下方法实现该目的:首先确定多边形网格在对象空间 (XYZ) 中的曲面区域,将它与展开的 UV 网格的曲面区域进行比较,然后依照该值缩放 UV 网格。

在展开多个壳并且您需要它们之间具有相似的比例时,该选项非常有用。

比例因子(Scale factor)

用于确定“重缩放”(Rescale)量的比值。“比例因子”大于 1 会导致 UV 网格放大,而“比例因子”(Scale factor)小于 1 会导致 UV 网格缩小。

例如,如果多边形网格在场景视图中的单位大小为 1,则“比例因子”(Scale factor)设置为 0.02 将导致相应 UV 网格在“UV 纹理编辑器”(UV Texture Editor)中的单位大小为 0.02。

保持历史(Keep history)

如果启用“保持历史”(Keep History),则每当多边形模型的网格发生更改时,“展开”(Unfold)功能都会自动重新计算壳的 UV 纹理坐标位置。这提供了这样一种效果:当网格变形时,纹理似乎随着曲面向内或向外扭曲。

启用“保持历史”(Keep History)可能会导致在设置多边形对象的动画时计算时间较长,从而影响交互性能。仅当您特别希望出现这种特殊效果,并且了解这会在您的场景中对交互性能产生的影响时,才应该启用该选项。

默认设置为禁用。

解算器权重设置示例

以下示例演示更改“权重解算器朝向”(Weight solver towards)选项以及固定和对齐 UV 如何帮助控制产生的展开 UV 布局和纹理映射。

  • 桶状的多边形对象已使用棋盘格纹理进行纹理映射。通过使用“展开”功能并在“权重解算器朝向”选项设定为 0(默认值)的情况下执行初始展开,最初会在“UV 纹理编辑器”(UV Texture Editor)中产生锥化的 UV 布局。生成的纹理贴图在对象上是歪曲和扭曲的。
  • 另一个展开操作在“权重解算器朝向”(Weight solver towards)选项设定为 0.6 时执行。这会以更全局化的方式展开 UV 并减弱之前出现的锥化效果。UV 布局的可预测性更强,但是 UV 网格的左下角会出现一些 UV 重叠,从而导致纹理上出现重叠。
  • 通过重新定位和固定 UV 网格的角点并在“权重解算器朝向”(Weight solver towards)设置为 0 时执行另一展开操作,可进一步松弛 UV 并移除重叠区域。
  • UV 的顶部和底部行将会对齐,并在“权重解算器朝向”(Weight solver towards)选项设置为 0 且固定边界的情况下执行最终的展开操作。