应用抗锯齿功能

您可以对整个 Kanzi 应用程序或仅对选定节点应用抗锯齿功能:

默认情况下,Kanzi Studio 预览 (Preview)Kanzi 应用程序播放器 (Application Player) 在 Windows 系统中应用抗锯齿采样数为 4 个。您可以配置希望两者使用的抗锯齿采样数量。请参阅 在 预览 (Preview) 和 应用程序播放器 (Application Player) 中设置抗锯齿

对整个应用程序应用抗锯齿

当对整个应用程序应用抗锯齿时,您需要设置要使用的抗锯齿表面样本数。由于值取决于您要运行Kanzi 应用程序的设备,请检查该设备的文档,查看受支持的值。如果您将抗锯齿表面样本数设置为您的设备不支持的值,Kanzi Engine 会将该值限制为设备驱动程序支持的最大值。

要对整个应用程序应用抗锯齿:

请参阅 表面属性

预览 (Preview)应用程序播放器 (Application Player) 中设置抗锯齿

默认情况下,Kanzi Studio 预览 (Preview)Kanzi 应用程序播放器 (Application Player) 在 Windows 系统中应用抗锯齿采样数为 4 个。您可以配置希望两者使用的抗锯齿采样数量。

如果您有包含 C++ 应用程序的 Kanzi 应用程序,要以在目标设备上运行您 Kanzi 应用程序时的相同方式查看 Kanzi Studio 预览 (Preview)Kanzi 应用程序播放器 (Application Player) 中的内容,您可以在 application.cfg 文件中设置抗锯齿功能。请参阅 对整个应用程序应用抗锯齿

要在不包含 C++ 应用程序的 Kanzi 应用程序的 Kanzi Studio 预览 (Preview) 中设置抗锯齿,请执行以下操作:

  1. Kanzi Studio 主菜单中选择 工程 (Project) > 属性 (Properties),然后在 属性 (Properties)预览 (Preview) 区域,将 预览工作目录 (Preview Working Directory) 属性值设置为您存储 application.cfg 以配置 预览 (Preview) 的目录。
    例如,将预览工作目录 (Preview Working Directory) 属性设为Application Player。这样您就可以在 Windows 系统中对 预览 (Preview)Kanzi 应用程序播放器 (Application Player) 应用相同的抗锯齿设置。如果 <ProjectName>/Application Player 目录尚不存在,请选择 文件 (File) > 导出 (Export) > 导出为适用于 Windows 的 KZB 播放器 (Export as KZB Player for Windows)。请参阅从 Kanzi Studio 构建 Kanzi 应用程序并将其部署到 Windows
  2. 在您上一步中设置的目录中,创建或打开 application.cfg 文件,然后添加 SurfaceSamplesAntialiasing 参数,并将其设置为您希望 预览 (Preview) 使用的抗锯齿采样数量。
    例如,要在 预览 (Preview) 禁用抗锯齿功能,请在 application.cfg 添加以下代码:
    SurfaceSamplesAntialiasing = 0
  3. Kanzi Studio 中重启 预览 (Preview)

使用多重采样

使用多重采样抗锯齿 (MSAA) 来减少 Kanzi 应用程序选定部分中的锯齿。为使多重采用功能能够运行,运行 Kanzi 应用程序的硬件必须满足以下任意要求:

多重采样比超级采样需要的资源更少。对多边形进行栅格化时,多重采样仅为多边形边缘的片段生成额外样本,而超级采样为多边形的所有片段生成额外样本。

当使用基于磁贴的多重采样时,通常在移动平台上,GPU 一次仅为一个 GPU 磁贴生成多个样本。GPU 在将磁贴写回纹理内存时,以隐式方式解析样本,可节省内存和 GPU 带宽。

在第一幅图像中,不应用任何抗锯齿功能。在第二幅图像中,应用具有 8 个样本的多重采样功能。

要使用多重采样:

  1. In the 素材库 (Library) 按下 Alt 并右键点击 渲染 (Rendering), and select Compose and Blit Pass.
    Compose and Blit Pass template contains the render pass structure that enables you to blit to the screen 合成目标渲染通道 (Composition Target Render Pass) render passes or textures using a specific material. The template contains these render passes:
  2. In the 工程 (Project) select the 场景 (Scene) node for whose content you want to reduce aliasing and in the 属性 (Properties) set the 渲染通道 (Render Pass) property to the Compose and Blit Pass render pass.
    Kanzi now renders the 场景 (Scene) using the Compose and Blit Pass render pass.

  3. 素材库 (Library) 中选择您在此过程的较早阶段创建的合成目标渲染通道 (Composition Target Render Pass),在属性 (Properties) 中添加多重采样级别 (Multisample Level) 属性,并将其设置为要使用的抗锯齿样本数。
    例如,将 多重采样级别 (Multisample Level) 设置为 8。
    请查看您希望用于运行 Kanzi 应用程序的设备的相关文档,了解设备支持的值,因为抗锯齿采样数量取决于设备的支持程度。如果您将多重采样级别 (Multisample Level) 属性设置为您的设备不支持的值,Kanzi Engine 会将该值限制为设备驱动程序支持的最大值。

Kanzi 现在应用抗锯齿到场景 (Scene) 节点的内容。

使用超级采样

如果您的硬件不支持多重采样,使用超级采样 (SSAA) 可以减少 Kanzi 应用程序选定部分的锯齿。与多重采样相比,超级采样需要消耗更多的资源。在栅格化多边形时,超级采样为多边形中的所有片段生成额外样本,而多重采样仅为多边形边缘的片段生成额外样本。

对合成目标进行超级采样

当您使用合成目标渲染通道 (Composition Target Render Pass) 渲染 3D 内容时,可以对合成目标纹理进行超级采样。要对合成目标纹理进行超级采样,您必须使用合成目标渲染通道 (Composition Target Render Pass) 自动创建的合成目标。

要对合成目标进行超级采样:

  1. In the 素材库 (Library) 按下 Alt 并右键点击 渲染 (Rendering), and select Compose and Blit Pass.
    Compose and Blit Pass template contains the render pass structure that enables you to blit to the screen 合成目标渲染通道 (Composition Target Render Pass) render passes or textures using a specific material. The template contains these render passes:
  2. In the 工程 (Project) select the 场景 (Scene) node whose content you want to supersample and in the 属性 (Properties) set the 渲染通道 (Render Pass) property to the Compose and Blit Pass render pass.
    Kanzi now renders the 场景 (Scene) using the Compose and Blit Pass render pass.
  3. 在用于渲染要进行超级采样的节点的合成目标渲染通道 (Composition Target Render Pass) 中,添加分辨率乘数 (Resolution Multiplier) 属性,将其设置为要乘以合成目标纹理分辨率的值。

对渲染目标纹理进行超级采样

您可以对纹理笔刷 (Texture Brush) 中使用的或者作为图像 (Image) 节点中图像使用的渲染目标纹理进行超级采样。

要对渲染目标纹理进行超级采样:

  1. 素材库 (Library)按下 Alt 并右键点击 材质和纹理 (Materials and Textures),然后选择渲染目标纹理 (Render Target Texture)。请参阅使用渲染目标纹理
    这是您要渲染到节点内容上的纹理,希望减少节点锯齿。
  2. 素材库 (Library) 中选择您刚创建的渲染目标纹理 (Render Target Texture),然后在 属性 (Properties) 中设置:
  3. 工程 (Project) 中选择要对其应用超级采样的节点,并在属性 (Properties) 中添加和设置:
  4. 将您在第一步中创建的渲染目标纹理 (Render Target Texture) 应用至您要在其中显示上一步选定节点的多重采样图像的节点。
    例如:
    1. 工程 (Project)按下 Alt 并右键点击,然后选择2D 空节点 (Empty Node 2D)
    2. 工程 (Project) 中,选择2D 空节点 (Empty Node 2D) 节点,在属性 (Properties) 中添加背景笔刷 (Background Brush) 属性,然后在下拉菜单中选择+ 纹理笔刷 (+ Texture Brush)
    3. 点击背景笔刷 (Background Brush) 属性旁的 ,然后将纹理笔刷 (Texture Brush)笔刷纹理 (Brush Texture) 属性设为您要在第一步创建的2D 空节点 (Empty Node 2D) 中显示的渲染目标纹理 (Render Target Texture)
    4. 工程 (Project) 中选择2D 空节点 (Empty Node 2D),然后在属性 (Properties) 中添加布局宽度 (Layout Width)布局高度 (Layout Height) 属性,并将其设为您要显示的渲染目标纹理 (Render Target Texture) 内容的尺寸。
    1. 工程 (Project)按下 Alt 并右键点击,然后选择图像 (Image)
    2. 工程 (Project) 中选择图像 (Image) 节点,然后在属性 (Properties) 中将图像 (Image) 属性设为您要在图像 (Image) 节点中显示的渲染目标纹理 (Render Target Texture)

另请参阅

应用程序配置参考

使用渲染目标纹理

将内容渲染成合成目标

渲染最佳实践