NURBS 曲面近似

虽然可以采用解析方式生成 NURBS 曲面,但是,为了生成和显示这些曲面,必须根据面计算其近似值。使用本节中介绍的控件,可以对使用的近似类型及其参数进行设置。

为了渲染和显示视口,可以使用“曲面近似”卷展栏,控制 NURBS 模型中的曲面子对象的近似值求解方式。使用视口和渲染器计算 NURBS 近似值的方法不尽相同。通常,视口显示需要清晰和快速,而渲染显示需要平滑、精确以及“逼真”。但是,可以使用为视口选择的近似值创建网格。选择的网格类型会影响稍后应用于 NURBS 模型的修改器的行为。

该卷展栏中前两个控件是单选按钮,用于选择显示输出的类型、视口或渲染器和这些参数控制。

曲面近似参数不能用于设置动画。

注: 如果曲面的大小或形状随时更改,对其计算近似值时所用的细化也可能会(自动)发生更改。使用这种方法的优点在于,可以缩短动画的渲染时间。但是,缺点在于,无法在设置动画期间向更改细化的 NURBS 对象应用图像运动模糊。细化的“规则”方法属于例外:设置动画时,它不会发生更改。因此,可以结合使用图像运动模糊和“规则”细化。

每个曲面的曲面近似

默认情况下,曲面子对象使用相同的近似设置作为顶级 NURBS 模型。您可以覆盖这些设置。此时,每个曲面子对象都拥有自身的“曲面近似”卷展栏。如果禁用“锁定到顶级”切换,将会禁用该卷展栏中的控件。禁用该切换时,可以选择该曲面子对象特有的近似设置。

界面

  • 视口 选中该选项后,卷展栏会影响预览渲染器在视口(包括明暗处理视口)中交互显示 NURBS 对象中的曲面的方式。

    另外,对 NURBS 对象应用网格修改器(如“网格选择”)时,也会使用“视口”曲面设置。因为该修改器会影响场景的几何体,所以,这一点是很重要的。

  • 渲染器 选中该选项后,卷展栏会影响渲染器显示 NURBS 对象中曲面的方式。

使用下一组按钮,可以选择受曲面近似设置影响的几何体部分。

基础曲面

设置会影响整个曲面。这是默认设置。

曲面边

启用时,可以设置近似值,以供细化修剪曲线定义的曲面边时使用。禁用“锁定”时,曲面和边的细化值彼此无关。

对于对象级曲面,如果没有禁用“锁定”(如下所述),将无法使用该选项。

置换曲面

启用时,可以为已应用置换贴图的曲面设置第三个独立的近似设置。只有选中“渲染器”时,才能使用该选项。

使用预设的近似设置(位于“预设”组框),应该可以更加快速地获得置换曲面的结果。

锁定

(仅限对象层级曲面)将“基本曲面”设置锁定到“曲面边”设置。换而言之,如果没有禁用“锁定”,曲面和曲面边具有相关的细化设置。默认设置为启用。

“细分预设”组

用于选择低、中或高质量的预设曲面近似值。选择预设值时,使用的值将会显示在“细化方法”卷展栏中。

预设值保存在 3dsmax.ini 文件中。使用“曲面近似”工具,可以对预设值进行自定义。

选择低质量(相对)曲面近似。默认值如下:

视口,基本曲面:

方法=空间和曲率 边=50.0 距离=50.0 角度=50.0 合并=0.0 高级参数 最小值=0,最大值=3

渲染器,基本曲面:

方法=空间和曲率 边=20.0 距离=20.0 角度=15.0 合并=0.01 高级参数 最小值=0,最大值=3

渲染器,置换曲面:

方法=空间和曲率 边=20.0 距离=20.0 角度=10.0 合并=(未提供)高级参数 最小值=0,最大值=2

快捷键:Alt+1

(视口和渲染的默认值。)选择质量中等的曲面近似。默认值如下:

视口,基本曲面:

方法=空间和曲率 边=20.0 距离=20.0 角度=15.0 合并=0.0 高级参数 最小值=0,最大值=3

渲染器,基本曲面:

方法=空间和曲率 边=10.0 距离=15.0 角度=10.0 合并=0.01 高级参数 最小值=0,最大值=4

渲染器,置换曲面:

方法=空间和曲率 边=10.0 距离=10.0 角度=4.0 合并=(未提供)高级参数 最小值=0,最大值=3

快捷键:Alt+2

选择质量高的曲面近似。默认值如下:

视口,基本曲面:

方法=空间和曲率 边=5.0 距离=15.0 角度=10.0 合并=0.0 高级参数 最小值=0,最大值=3

渲染器,基本曲面:

方法=空间和曲率 边=5.0 距离=5.0 角度=3.0 合并=0.01 高级参数 最小值=0,最大值=4

渲染器,置换曲面:

方法=空间和曲率 边=5.0 距离=5.0 角度=2.0 合并=(未提供)高级参数 最小值=0,最大值=4

快捷键:Alt+3

注: 曲面近似预设值的键盘快捷键不要求启用“键盘快捷键覆盖切换”。您可以更改 NURBS 对象的曲面近似,具体方法是在视口中选择所需的曲面近似,然后使用 Alt+1Alt+2Alt+3。对子对象而言,这种方法同样适用,但不同的是必须禁用曲面子对象的“锁定到顶级”切换。

“细分方法”组

如果已经选择上述“视口”,该组中的控件会影响 NURBS 曲面在视口中的显示;如果已经选择上述“渲染器”,这些控件还会影响该渲染器显示曲面的方式。您可以在五种算法中进行选择。采用其他方法对 NURBS 曲面进行细化时,每种算法都可以计算该曲面的近似值。

总而言之,如果选定的预设值可以提供理想的结果,则不必调整该卷展栏中的控件。如果遇到与其他预设值有关的问题,请对其进行调整。

提示

  • 视口细化:使用细化方法,可以创建网格。如果使用网格选择修改 NURBS 对象,请选择提供所需结果的方法。如果过多使用修改器,“空间”或“参数”可能会因常规细化而优于“曲率”。与曲率有关的细化可能会使某些修改器出现问题。
  • 渲染器细化:“空间”和“曲率”通常会获得最精确的渲染结果。渲染动画曲面时,“曲率”可能是最为高效的选择方法。
锁定到顶级

(仅限子对象曲面。)启用时,曲面子对象可以使用与顶级 NURBS 模型相同的曲面近似设置,所以,将会禁用该卷展栏中的其他控件。禁用时,可以对子对象近似进行设置,使其与顶级模型不同。默认设置为启用。

规则

根据 U 向步数 V 向步数通过曲面生成固定的细化。增加这些参数时,可以提高准确性,但会降低速度,反之亦然。但是,一般而言,这是一种计算 NURBS 曲面近似值最快速最不准确的方法。使用“规则”方法时,如果 U 向步数或 V 向步数的值非常低,通常不会得到理想的结果。模型的复杂性将会随 U 向步数和 V 向步数的增加而缓慢增加。

NURBS 茶壶的“规则”网格

参数

根据 U 向步数 V 向步数生成自适应细化。使用“参数化”方法时,如果 U 向步数和 V 向步数的值不高,通常可以得到理想的结果。模型的复杂性将会随 U 向步数和 V 向步数的增加而快速增加。因此,从“规则”切换时要格外注意,因为“规则”一般需要较高的 U 和 V 值。对于“参数化”,较低的 U 和 V 值通常就能满足要求。

例如,如果将茶壶转换成 NURBS,并将 U 和 V 向步数设置为 15,则“规则”方法会生成 4470 个面,而“参数化”方法会生成 204960 个面。

NURBS 茶壶的参数网格

空间

生成由三角形面组成的统一细化。

“边”参数可以在细化时指定三角形的最大长度。该值是对象边界框的百分比。减小该值时,将会提高准确性,但会延长渲染时间。

NURBS 茶壶的“空间”网格

曲率

(默认设置。)根据曲面的曲率生成可变的细化。如果使曲面更加弯曲,则细化的纹理将更加精致。动态更改曲面曲率时,将会更改曲率的细化。

“距离”参数可以指定近似值偏离实际 NURBS 曲面的远近程度。距离是每个曲面边界框的对角线的百分比。无论其他曲面如何,都可以根据对象中的每个曲面的大小对其进行细化。缩放曲面时,不会更改其细化。减小该值时,将会提高准确性,但会延长渲染时间。如果将“距离”设定为 0.0,3ds Max 将会忽略此参数,并使用“角度”控制准确性。

“角度”参数可以在计算近似值时指定各面之间的最大角度。减小该值时,将会提高准确性,但会延长渲染时间。如果将“角度”设定为 0.0,3ds Max 将会忽略此参数,并使用“距离”控制准确性。

如果“距离”和“角度”都为 0.0,该曲面将会退化,因此,它可以变成平面。

NURBS 茶壶的“曲率”网格

空间和曲率

通过所有三个值使空间(边长)方法和曲率(距离和角度)方法完美结合。

“边”参数可以在细化时指定三角形的最大长度。该值是对象边界框的百分比。减小该值时,将会提高准确性,但会延长渲染时间。如果将“边”设置为 0.0,则效果与“曲率”方法等同。

“距离”参数可以指定近似值偏离实际 NURBS 曲面的远近程度。距离是每个曲面边界框的对角线的百分比。无论其他曲面如何,都可以根据对象中的每个曲面的大小对其进行细化。缩放曲面时,不会更改其细化。减小该值时,将会提高准确性,但会延长渲染时间。如果将“距离”设定为 0.0,3ds Max 将会忽略此参数,并使用“边”和“角度”值控制准确性。

“角度”参数可以在计算近似值时指定各面之间的最大角度。减小该值时,将会提高准确性,但会延长渲染时间。如果将“角度”设定为 0.0,3ds Max 将会忽略此参数,并使用“边”和“距离”值控制准确性。

如果“距离”、“角度”和“边”都为 0.0,该曲面将会退化,因此,它可以变成平面。

NURBS 茶壶的“空间和曲率”网格

依赖于视图

(仅限“渲染器”)启用时,要在计算细化期间考虑对象到摄影机的距离。从而可以通过对渲染场景距离范围内的对象不生成纹理细密的细化来缩短渲染时间。只有渲染摄影机或透视视口时,才能使用依赖于视图的效果。该效果不适用于正交视图。激活“视口”时,将会禁用该控件。

对于“空间”、“曲率”和“空间和曲率”方法,如果启用“依赖于视图”,“距离”和“边”值将指定像素而不是 3ds Max 的单位。

注: 启用“依赖于视图”时,细化将会快速达到最大的细分界限。此时,可能需要将该值增加为 7(允许的最大值)。请参见“高级参数”的说明,如下所述。
合并(仅限子对象曲面)

控制对边处于连接或近乎连接状态的曲面子对象的细化。如果输入到修改器(如“网格选择”)时需要网格,以及如果是为产品级渲染细化 NURBS 曲面,则在默认情况下,3ds Max 会根据沿边的面数调整相邻曲面的细分,以使其相互匹配。“合并”参数可以控制上述操作方式。如果“合并”值为零,相邻面将保持不变。增加“合并”值会增加 3ds Max 用于计算应如何匹配边的距离,从而在渲染时确保曲面之间没有间距。默认设置为 0.0。

在大多数情况下,不必调整“合并”。如果渲染时显示近乎相邻的面间的间距,将会增加“合并”值,以便将其消除。

从技术上讲,“合并”值是对象的边界框对角线的 0.1%。换而言之,如果“合并”值为 1.0(在大多数情况下高于所需的值),将会是对角线长度的 0.1%。因为“合并”值基于对象的维数,所以,可以缩放 NURBS 模型,而不会影响“合并”设置。

高级参数

单击时,可以显示“高级曲面近似”对话框。该对话框中的参数可以应用于“空间”、“曲率”和“空间和曲率”近似方法。

清除曲面层级

(仅限顶级曲面。)清除分配给各个曲面子对象的所有曲面近似设置。单击该按钮时,将会丢失所有特定于曲面的近似值,还会为曲面子对象启用“锁定到顶级”。