关于 XGen 的常见问题解答

什么是法线补偿?
基本体在参数化面片空间而非 Euclidean (XYZ) 空间中生成。因此,基本体的分布采用方形面片以与方形参数空间相匹配。法线补偿会尝试补偿非方形面片分布。

为了补偿非方形分布,XGen 会查找 U 和 V 等参线的比率。例如,如果面片的宽度是高度的两倍,则形状补偿会调整头发密度,使沿高度生成一半的头发。基本上,补偿会修改参数空间以匹配 Euclidean 空间,然后消隐在参数化域之外的任何点。

什么是参数化补偿?
如上所述。基本体在面片的参数空间而非 Euclidean (XYZ) 空间中生成。因此,基本体分布假定统一参数空间与面片上的统一曲面面积相匹配。参数化补偿会对等参线参数间距不统一的任何面片进行更正。

例如,您拥有一个方形面片,不需要法线补偿,但等参线在 Euclidean 空间中扭曲,面片的中心区域的面积比面片另一位置的其他类似参数范围小得多。这种差异导致基本体在小面积区域中显得非常密集,而在大面积区域中显得不太密集。

XGen 通过基于统一参数间距查找曲面面积数组,对此进行补偿。然后,比较这些面积并进行缩放以生成密度补偿贴图,从而指示生成器在面积较大的面片区域中生成更多基本体,在面积较小的区域中生成更少的基本体。

如何重新生成我的参数化补偿贴图?
实现优化目的,如果面片存在贴图,则会重用。XGen 不会检查几何体中的更改。这一点很重要,因为参数化补偿贴图应在面片引用的模型中生成。若要重新生成贴图,请单击 “补偿法线”(Compensate Normals)下的“创建参数化贴图”(Create Parameterization Map)
注: XGen 不会自动生成贴图,因此您必须生成一个贴图。只需在存在拓扑更改或基础模型更改的情况下执行此操作。
为模型设置动画时为什么会弹出基本体?
面片面积在绑定时计算,然后进行缓存。面片在以下情况下被视为绑定:
  • 您手动绑定面片。
  • 面片通过 Maya 场景加载。
  • 导入的面片。

由于渲染涉及描述导入,因此届时会绑定面片并计算面积。在渲染时,由于变形,面片每个帧可能具有不同的面积。这通常会导致生成不同数量的基本体。因此,最好使用面片引用的模型。请参见 XGen 面片

为什么我在渲染时仍会弹出面片引用的模型?
面片引用的模型与模型几何体同时绑定。如果加载场景,并且没有面片引用,则不绑定面片引用的模型。如果随后创建面片引用,则 XGen 不会注意到它,并且不会使用它。因此,如果您在加载场景之后创建面片引用,请保存该场景然后重新加载,以便 XGen 可以正确地绑定面片引用的模型。
我如何预览选定的 XGen 面片或描述?
若要预览选定对象,请选择以下项之一:
  • 几何体对象
  • XGen 面片
  • 说明
  • 导向
然后从 XGen 菜单选择预览选项。

请参见预览生成的基本体

如何设置调试和统计信息级别?
您可以通过两种方式设置调试级别,具体取决于您如何使用 XGen。
XGen 表达式编辑器中使用以下命令:
xgmMessage -d <debuglevel> -s <statlevel> -w <warninglevel>
可以使用“调试”(Debug)修改器(请参见调试)设置调试级别。也可以从 XGen 编辑器中的“日志”(Log)菜单设置调试级别。