关于 XGen 的常见问题解答

 
 
 

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

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

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

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

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

如何重新生成我的参数化补偿贴图?
出于优化目的,如果面片存在将重复使用的贴图,XGen 不会检查几何体中的更改。这一点很重要,因为参数化补偿贴图应在面片引用的模型中生成。若要重新生成贴图,请单击“补偿”(Compensation)旁边的“生成”(Generate)按钮。
注意XGen 不会自动生成贴图,因此您必须生成一个贴图。您只需在存在拓扑更改或基础模型更改时执行该操作。
“导向渲染器”(Guide Renderer)“导向生成器”(Guide Generator)似乎命名有误
乍一看,“导向渲染器”(Guide Renderer)“导向生成器”(Guide Generator)似乎命名有误。“导向渲染器”(Guide Renderer)会创建新的导向。请记住,生成过程是您通常用于预览/渲染的过程。不同的是结果,结果不是交互式显示中的基本体,也不是渲染图像中的基本体,而是一个新导向。

当您只希望在存在导向的位置渲染基本体时使用“导向生成器”(Guide Generator),因为“导向生成器”(Guide Generator)仅渲染/预览导向,而不会生成新的基本体。“导向生成器”(Guide Generator)会正常渲染,生成一个图像或交互式显示。生成过程具有覆盖性,因此将生成的基本体位于导向的位置,而不是随机位置。

为模型设置动画时为什么会弹出基本体?
面片面积在绑定时计算,然后进行缓存。面片在以下情况下被视为绑定:
  • 您手动绑定面片
  • 通过 Maya 场景加载面片
  • 导入面片

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

为什么我在渲染时仍会弹出面片引用的模型?
面片引用的模型与模型几何体同时绑定。如果加载场景,并且没有面片引用,则不绑定面片引用的模型。如果随后创建面片引用,则 XGen 不会注意到它,并且不会使用它。因此,如果您在加载场景之后创建面片引用,请保存该场景然后重新加载,以便 XGen 可以正确地绑定面片引用的模型。
我如何预览选定的 XGen 面片或描述?
若要预览选定对象,请选择以下项之一:
  • 一块几何体
  • 一个 XGen 面片
  • 描述
  • 导向
然后为选定对象选择一个预览类型。例如,选择“已选定: 当前描述”(Selected: Current Description)可将预览限制为与当前选择对象相关并且绑定到当前描述的面。
如何设置调试和统计信息级别?
您可以通过两种方式设置调试级别,具体取决于您如何使用 XGen。

XGen 表达式编辑器中使用以下命令:

xgmMessage -d <debuglevel> -s <statlevel> -w <warninglevel>
您可以使用“调试”(Debug)修改器设置调试级别。请参见(调试)了解详细信息。您还可以通过 XGen 窗口中的“日志”(Log)菜单设置调试级别。