directx是什么东西在哪看 directx功能不可用怎么办( 六 )


另外,DX12大大提高了多线程效率,可以充分发挥多线程硬件的潜力 。DX11在这方面受CPU性能的严重制约,主要是因为不能有效利用多核心 。微软宣称,微软对多核心CPU的利用几乎是线性增长的,也就是说四核心能接近单核心的四倍 。
DirectX 12 Ultimate
2020年3月20日,微软正式发布了新一代游戏图形API:DirectX 12 Ultimate,而NVIDIA在第一时间表示旗下RTX 20**系列显卡都将完美支持 。
资深玩家都知道,自从DirectX 7.0开始,每一代DirectX的版本更新都会带来图形技术的重大升级(例如DirectX 7.0首次支持硬件T&L、DirectX 8.0/8.1开始支持Pixel Shader&Vertex Shader……),那么这一次的DirectX 12 Ultimate(以下简称DX12U),相对DX12有些什么升级,又带来了什么次世代的黑科技呢?
四大重点黑科技,DX12U升级很实在

directx是什么东西在哪看 directx功能不可用怎么办


首先DirectX 12 Ultimate中新增的特性主要有四大块,分别是DirectX Raytracing 1.1、可变速率渲染、Mesh渲染器和采样器反馈(Sampler Feedback) 。
DirectX Raytracing 1.1
DirectX Raytracing(DXR)是微软在2018年为DirectX 12引入的新特性,让它支持实时光线追踪处理 。1.0版本的DXR在软件特性上比较基础,可以说它是围绕着Turing架构的硬件实现而设计的,当时也没有从软件开发角度去考虑如何实现光追 。而1.1版本扩展了DirectX 12在光线追踪方面的软件特性,让它的效率更高,同时对开发者也更友好 。主要有三点:
允许GPU直接调用光追
跑在GPU上面的着色器在1.1版本中可以直接调用光线追踪,而无需折返CPU来调用 。这项功能对于自适应光线追踪场景非常有用,尤其是在基于着色器实现的剔除、排序、分类和细化等场景中 。基本上今后的光线追踪工作可以在GPU上面准备并立即生成 。
按需加载光线追踪着色器
当玩家在游戏世界中移动、新的物件变为可见的过程中,流式引擎可以根据此时的画面需求来加载新的光线追踪着色器,提高处理过程的效率 。
内联光线追踪
内联光线追踪(Inline raytracing)是目前基于动态着色器的光线追踪的一种替代形式,你可以将其理解为一种简化的光线追踪 。开发者在内联光线追踪过程中将有更大的控制权,并且可以在任意的着色阶段调用它,包括计算着色和像素着色阶段 。它与传统基于动态着色器的光线追踪可以混合使用,对于简单的场景,内联光线追踪将会提供更好的性能表现,而在复杂场景中,基于动态着色器的光线追踪将会提供更好的运行效果 。
可变速率渲染
可变速率渲染(Variable Rate Shading)是一项由NVIDIA在其Turing GPU上率先引入的加速渲染特性,具体介绍可以看我们的课堂文章:《超能课堂(212):VRS可变速率着色为什么可以提高帧数?》,这边就简单讲一下它的原理,而不再赘述细节了 。
简单来说,VRS的原理是通过改变单次像素着色器操作所处理的像素数量,来改变屏幕不同区域的着色质量 。简单来说,它可以改变同个画面中不同部分的渲染精细度,它的用处是提高画面帧数 。
directx是什么东西在哪看 directx功能不可用怎么办


在不开启VRS的情况,也就是正常情况下,一帧画面的所有像素都是独立着色的;而开启VRS之后,原本独立的像素被分成了一个个像素块,它们会共享着色结果,此时GPU会根据程序员设定的重要性分级为所有像素块分配不同的着色精细度 。拿上面的图片为例,车辆和远景部分的像素仍然是独立着色的,但快速变动的道路和路边的像素块就是区块共同着色的,此时由于显卡的计算资源得到了节约,所以游戏的帧数会有所提高 。

推荐阅读