美文网首页
英伟达 GPU 中的 VRS「可变速率渲染」

英伟达 GPU 中的 VRS「可变速率渲染」

作者: 陈成_Adam | 来源:发表于2023-10-16 16:03 被阅读0次

    本文翻译自:What Is Variable Rate Shading? A Basic Definition of Nvidia VRS | Tom's Hardware (tomshardware.com)

    温馨提示:由于译者能力有限,所以读者最好参看原文。当然也可以看完译文再看原文,也许有所帮助。

    VRS on versus VRS off (Image credit: Microsoft)

    "Variable rate shading" 的中文翻译是「可变速率渲染」。这是一种图形渲染技术,用于在绘制图像时对不同区域的像素应用不同的采样率或绘制密度。通过减少不太重要的区域的渲染质量,可变速率渲染可以提高图形渲染的效率和性能。

    VRS 应用于英伟达的图灵和安培架构的 GPU,英特尔的 Gen11 图形架构也应用了该技术。

    (Image credit: Intel)

    3DMark 提供了一个用来展示打开和关闭 VRS 时的区别的视频,链接如下:

    https://youtu.be/d1zoGmhVB1U

    AMD 类似的技术叫做:FidelityFX Variable Shading,简称 VS。它是开源的。根据 AMD 的说法:“通过分析与前一帧的亮度变化,使用运动矢量生成新的图像”。

    那么 VRS 是如何工作的呢?

    GPU 内部有一个叫做像素着色器的部件,负责执行像素着色程序,通过对每一个像素都执行该像素着色程序,得到其最终的颜色。如果待渲染的场景细节越多,那么像素着色器所做的事情就越多,功耗也就越大。

    VRS 可以使得执行一次像素着色程序,完成多个像素的着色。例如,一个 16x16 的像素块。这使得开发者可以降低一帧图像中的某些区域的图像质量,从而减少 GPU 的工作量,最终实现帧率的提升,或者让一些带 VRS 功能的低端显卡也可以运行一些复杂图形应用。

    VRS 也非常适用于头戴设备。它可以使得开发者做到只渲染可以看到的像素,而不必渲染那些看不到的像素。

    DX12、DX11、OpenGL、Vulkan 都支持 VRS。英伟达表示他们正致力于把 VRS 引入到 Unreal Engine(虚幻引擎) 和 Unity。

    下面的视频来自英伟达,详细介绍了 VRS,

    https://youtu.be/Hgl9eTJio8Q

    相关文章

      网友评论

          本文标题:英伟达 GPU 中的 VRS「可变速率渲染」

          本文链接:https://www.haomeiwen.com/subject/bmgxidtx.html