Viewport 2.0 选项

性能(Performance)

合并世界(Consolidate world)

该选项会尝试为使用常用材质的形状组合几何缓存。在许多场景中,可以通过额外增加内存来获得性能的大幅提升。

在合并几何体时,“合并世界”(Consolidate world)会将多个对象的顶点移到一个新的共享对象空间中。因此,如果插件着色器做了有关对象的对象空间坐标的假设,“合并世界”(Consolidate world)将打破这些假设,着色器可能无法正确渲染。

若要使用此功能,必须重新将顶点法线规格化为单位长度。因此,不使用单位长度法线的材质将与“合并世界”(Consolidate world)不兼容。

当对象发生更改时,它还未进行合并。之后如果持续几个帧保持不变,它会重新进行合并。因此,如果您发现在编辑或取消选择后,对象在视口中绘制了很短时间内有所不同,这可能是“合并世界”(Consolidate world)导致的。如果不希望出现此情况,则禁用此选项。

提示: 如果工作区变得不稳定,请尝试禁用此选项。
重要: 使用该选项时,某些操作会引发轻微的延迟。
顶点动画缓存(Vertex Animation Cache)

默认情况下禁用。启用时,Maya 将缓存每帧动画的结果网格数据,从而在执行各种任务(包括拖动动画、翻滚摄影机、移动变换节点以及使用 Viewport 2.0 中的实时预览调整照明)期间获得更好的性能。

重要:
  • “顶点动画缓存”(Vertex Animation Cache)不支持子帧动画。
  • 请先确保您拥有足够的内存能够容纳大型或复杂场景(包含许多对象或大量几何体),然后再启用“顶点动画缓存”(Vertex Animation Cache)。如果没有足够的可用内存,性能可能会受到影响。
  • 为了使该选项正常工作,更改网格数据的拓扑的所有历史节点必须位于基于时间而改变的所有节点之前。这包括“skinCluster”节点和“polyTransfer”节点上的“变形用户法线”(Deform User Normals)选项,为了使用“顶点动画缓存”(Vertex Animation Cache),必须禁用该选项。
  • 如果播放速度受到钳制,例如,“最大播放速度”(Max Playback Speed)为 30 fps,那么“顶点动画缓存”(Vertex Animation Cache)可能需要多次循环才能完全缓存时间轴中的所有动画。

    提高效率的另一种方法是将“时间滑块”(Time Slider)首选项“播放速度”(Playback Speed)设置为“播放每一帧”(Play every frame),并且将“最大播放速度”(Max Playback Speed)设置为所需的帧速率(“窗口 > 设置/首选项 > 首选项”(Window > Settings/Preferences > Preferences))。

禁用(Disable)
禁用缓存。如果仅使用交互式工作流程(如建模或照明),且不需要播放场景,那么您可以禁用“顶点动画缓存”(Vertex Animation Cache)
硬件(Hardware)
将顶点缓冲区缓存到 GPU 中。如果在显卡上有足够的内存来存储所有场景、纹理和动画帧,那么“硬件”(Hardware)要比“系统”(System)快。否则,如果没有足够的内存,可能会遇到系统速度减慢。如果发生这种情况,请切换到“系统”(System)
系统(System)
将顶点缓冲区缓存到系统内存中。“系统”(System)“硬件”(Hardware)慢,但是通常存在多得多的内存可供缓存缓冲区使用。
GPU 实例化(GPU Instancing)

启用此选项后,如果一个 Maya 形状(如多边形对象)有多个实例(特别是大量实例),且所有实例都使用相同材质,则它们可以使用硬件实例化进行渲染。这消除了图形驱动程序状态更改开销以及渲染流程开销,可更快地生成渲染结果。

在某些情况下,您可能想要禁用“GPU 实例化”(GPU Instancing),例如以下情况:

  • 有时,当实例具有负比例并且您启用了其他功能(如背面消隐),照明可能显示不正确。通常,如果具有负比例且实例显示不正确,那么请禁用“GPU 实例化”(GPU Instancing)

  • 如果您拥有大量非常小的实例,启用此选项可能会降低场景的速度。例如,如果您拥有一个包含 1000 个非实例化对象的大型场景,并将其全部选中,然后一次性进行实例复制,那么您将拥有 1000 个实例对。在类似情况下,如果实例批次非常小且具有大量批次,那么“GPU 实例化”(GPU Instancing)的开销可能导致场景速度稍慢。没有实例的对象则不会有实例化开销。

  • 使用 MPxGeometryOverride 的插件可能不支持“GPU 实例化”(GPU Instancing)

线程依存关系图求值(Thread Dependency Graph Evaluation)

如果启用该选项,Maya 会尝试对单独的线程中的单独的角色(DG 的子图表)进行求值。

灯光限制(Light Limit)

使用该选项可设定渲染中使用的最大灯光数。不包括隐藏的灯光。默认为 8 个灯光,最大为 16 个灯光。

透明度算法(Transparency Algorithm)

请从下列透明度排序算法中选择。

简单(Simple)

不进行透明度排序。

对象排序(Object Sorting)

对象将按深度进行排序。会将离摄影机远的对象绘制在离摄影机近的对象前面。

加权平均(Weighted Average)

这是一个与顺序无关的透明度算法,且不涉及任何对象或多边形排序。会将最终颜色计算为一个像素内所有透明对象的加权平均。该算法的优点是,它与顺序无关,因此即使对于大量透明对象、头发、粒子系统等等,它也会很快。该算法非常适合远处对象,此时您需要使用快速算法渲染透明度,但不需要高质量。它对于单级别透明度是准确的,并且是稳定的,没有因排序产生的跳转瑕疵。

dx11Shader 和 ShaderFX 支持所有透明度算法。

深度剥离(Depth Peeling)

深度剥离透明度通过多个过程渲染每个像素的透明度。在每个过程中,剥每个像素的下一个透明层并在上一层的后面进行合成。在处理完所设置的已剥层的数目之后,将在单个过程中使用加权平均算法处理其余的所有层。这有助于平衡透明度质量和性能,因为深度剥提供高质量的透明度,但会大大降低性能。

注: “深度剥离”(Depth Peeling)不支持“多采样抗锯齿”(Multisample Anti-aliasing)。它仅影响不透明对象,而不影响透明对象。
透明度质量(Transparency Quality)
对于“深度剥离”(Depth Peeling)透明度算法,可在 Maya 开始使用加权平均算法前,通过此滑块选择要剥离的层数。从 2 个到 10 个过程范围内进行选择。

最大纹理分辨率钳制

钳制纹理分辨率(Clamp Texture Resolution)

启用时,任何分辨率高于“最大纹理分辨率”(Max Texture Resolution)的纹理都将缩小,以便您可以仍在纹理模式下操作,同时节约内存。

如果您的场景中包含多个高分辨率纹理,以致您的显卡没有足够的内存来处理,则不会加载这些纹理并以非纹理模式显示该场景。此时将显示一条错误信息,指明已超出纹理 RAM 限制并建议您减小“最大纹理分辨率”(Max Texture Resolution)钳制。

只要显卡没有足够的内存来处理纹理,就会显示该错误消息,如果未启用“钳制纹理分辨率”(Clamp Texture Resolution),或“最大纹理分辨率”(Max Texture Resolution)设置得太高且无法充分缩小纹理分辨率以满足可用的 GPU 内存,则会出现这种情况。

最大纹理分辨率(Max Texture Resolution)

设置一个在 32 和 8192 之间的值。

重新加载所有纹理(Reload All Textures)

在更改“最大纹理分辨率”(Max Texture Resolution)后,单击以将更新的限制应用于已加载到场景中的纹理。否则,更新的限制将仅应用于新加载的纹理。

不支持的纹理类型的烘焙分辨率(Bake Resolution for Unsupported Texture Types)

颜色纹理(Color Textures)凹凸纹理(Bump Textures)

支持用作烘焙纹理的 Maya 着色节点将列在 Viewport 2.0 的内部纹理烘焙中。可以使用这些属性为烘焙的纹理设定分辨率。

重新烘焙所有纹理(Rebake All Textures)
单击以查看当前所加载纹理的更改效果。

屏幕空间环境光遮挡

启用(Enable)

选择该选项可启用屏幕空间环境光遮挡。

注: 当“多采样抗锯齿”(Multisample Anti-aliasing)或“屏幕空间环境光遮挡”(Screen-space Ambient Occlusion)处于启用状态时,可能会在半透明对象顶部绘制 UI 项目(如定位器或线框网格)。
数量(Amount)
指定发生的环境光遮挡的强度。默认值为 1.0,但可以在 0.0 到 3.0 的范围内选择。
半径(Radius)
指定采样区域的半径(在屏幕空间中)。
采样数(Samples)
指定为改进环境光遮挡效果的外观而发生的遮挡采样数。
注:

当后期效果(如屏幕空间环境光遮挡)处于启用状态时,线框和组件的绘图将不受影响。曲面的填充显示会受到影响。但是,如果曲面是半透明的,那么曲面的线框和组件不会与填充的绘图混合到一起。例如,如果创建了一个对象,然后将其着色器透明度设定为半透明并选择该对象或其组件,那么将看到启用和禁用“屏幕空间环境光遮挡”(Screen-space Ambient Occlusion)之间的差别。

此外,与其他透明度选项不同,当为“透明度算法”(Transparency Algorithm)使用“加权平均”(Weighted Average)时,不会将线框绘图与透明曲面绘图混合到一起。

硬件雾

Falloff

从以下选项中进行选择:

  • “线性”(Linear):启用选项“开始”(Start)“结束”(End),并创建从灯光中心缓慢减弱的雾。

  • “指数”(Exponential)/“指数平方”(Exponential squared):启用确定雾的厚度的“密度”(Density)选项。此选项将创建遵循指数曲线快速减弱的雾。“指数平方”(Exponential squared)创建更逼真的雾。

密度

控制雾层中水汽的光学密度。增加该值以加厚雾。

起点
确定雾开始处与摄影机的距离。
结束(End)
确定雾结束处与摄影机的距离。
尖端(Tip)
可以设置“结束”(End)值的动画,以便在动画期间雾看起来扩散或消散。
颜色
设置雾的颜色。
Alpha

设置 Alpha 值以确定雾的不透明度。

注: 图像平面和基于图像的照明 (IBL) 不支持硬件雾。若要创建褪色的雾效果,请调整 imagePlaneShape 或 mentalrayIblShape 节点中的“颜色增益”(Color Gain)“颜色偏移”(Color Offset)

若要从雾渲染中排除特定的对象(例如,如果对象之一已烘焙雾),或者调整应用于对象的雾效果数量,请在对象属性编辑器“对象显示”(Object Display)部分中调整“硬件雾倍增”(Hardware Fog Multiplier)属性。此值设置为 0 时,对象不受雾的影响。此值设置为 1 时,雾将应用于对象。将滑块调整为介于 0 和 1 之间的值,以调整雾效果的数量。

抗锯齿

平滑线框(Smooth Wireframe)
选择此选项可为场景视图中的所有线(不论是 UI 还是几何体线框)启用抗锯齿。绘制某条线后,Maya 会将其混合在边周围。相比之下,多采样抗锯齿是逐场景采样且影响所有对象。此选项仅在禁用“多采样抗锯齿”(Multisample Anti-aliasing)的情况下起作用。
多采样抗锯齿(Multisample Anti-aliasing)

选择该选项可启用多采样抗锯齿。

注: 当“多采样抗锯齿”(Multisample Anti-aliasing)或“屏幕空间环境光遮挡”(Screen-space Ambient Occlusion)处于启用状态时,可能会在半透明对象顶部绘制 UI 项目(如定位器或线框网格)。
采样计数(Sample Count)
增大采样数可获得更好的抗锯齿质量。“采样计数”(Sample Count)越大,性能就越慢,但获得的抗锯齿效果会越好。
注: 采样计数选项与显卡有关。只有有效的选项才会显示在下拉菜单中。

浮点渲染目标

颜色管理首选项中也提供了这些选项。

启用(Enable)

启用时,可以渲染到浮点缓冲区,而不是整数缓冲区。

格式(Format)

从以下选项中选择:

注: 支持的格式是与卡相关的,且只有有效的选项才会显示在下拉菜单中。
R32G32B32A32_FLOAT
为 32 位的 RGBA 通道选择此选项。
R32G32B32_FLOAT
为 32 位的 RGB 通道选择此选项。
R16G16B16A16_FLOAT
为 16 位的 RGBA 通道选择此选项。