• Intel® Graphics Performance Analyzers 2020 R1
  • 12/20/2019
  • Public Content
Contents

最大限度减少过度绘制

使用 Graphics Frame Analyzer,可以了解哪些 API 调用影响特定的像素,并可通过删除冗余或不重要的调用来最大限度地减少过度绘制。例如,照明效果通常由多次渲染轮回造成。可确定是否可以减少轮回的次数以获得类似的视觉效果而提高性能。 要检测影响该像素最终颜色的 API 调用的顺序:
  1. Resource List 中选择渲染目标的颜色缓冲区。 Graphics Frame Analyzer 在
    Profiling View
    中打开渲染目标图像。
  2. 使用下拉菜单中可用的不同可视化模式来分析渲染目标图像:
    • Current
      (默认)- 显示经过修改的渲染目标。如果未应用实验设置,则当前状态等于初始状态。在这种模式下,可点击 按钮显示颜色分布
    • Original
      - 显示渲染目标而不进行修改。
    • Diff
      - 显示当前模式和初始模式之间的差异。
    • Overdraw
      - 显示渲染目标图像的每个像素的命中次数。颜色越明亮,像素被更新的次数越多。将鼠标悬停在像素上查看下面的击中数。
  3. Overdraw
    模式中,将鼠标悬停在要分析的像素上。Graphics Frame Analyzer 在图像下面显示选定像素的击中数。
  4. 点击要分析的像素。Graphics Frame Analyzer 以十字符号标记选定的像素,并过滤 API 调用以仅显示那些影响此像素的 clear、draw、blit 或纹理图像更新调用,而产生的像素颜色显示在每个调用旁边。
  5. 查看 中的像素历史。Graphics Frame Analyzer 显示像素坐标、像素组件、每次 draw call 触及此像素的次数及被拒绝的 draw calls 次数。可以切换回颜色缓冲区以更好地了解选定的像素在总体场景中的位置。
    提示
    要查找 draw call 被拒绝的原因,可以微调此 draw call 的管道状态。例如,禁用深度或模板测试。对于因剪裁测试或颜色遮罩遭拒的 draw call,
    API Log
    会自动显示拒绝的原因。
  6. 分析影响该像素的调用,以确定如何以较低成本获得相同或相似的结果:
    • 如果看到影响像素的两个 API 调用属于同一类型,或许可删除其中一个来提高性能。要了解删除 API 调用可提高多少性能,请选择该调用并勾选
      Experiments
      窗格中的
      Disable Event(s)
      复选框
    • 检测错误使用的 API 调用。勾选
      Experiments
      窗格内的
      Disable Event(s)
      复选框,可以删除此类调用,从而观察可能的性能提升。
      备注
      只有目标系统中存在指标数据,才可以进行
      Disable Event(s)
      实验。否则,
      Experiments
      窗格不显示。
场景中带有许多重叠对象或具有半透明纹理(如烟、雾或水)的对象,通常会造成显卡高负载,从而降低帧速率。如果发现过度绘制是问题,可尝试在渲染之前剔除一些基元,改变 draw 顺序(因此该 Z 缓冲区测试将在用耗时的像素着色器渲染许多基元之前先剔除这些基元),或者使用简化场景复杂性的其他细节级别的优化。

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804