【简介】
DirectX(Direct eXtension,简称DX)它是由微软创建的多媒体编程接口,是一种应用程序接口(API)。DirectX可以让以windows提高平台游戏或多媒体程序的执行效率,加强3D图形和声音效果,并为设计师提供共同的硬件驱动标准,使游戏开发者不必为每个品牌的硬件编写不同的驱动程序,也降低了用户安装和设置硬件的复杂性。DirectX已广泛使用Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360和Microsoft XBOX ONE开发电子游戏。
功能介绍
Microsoft DirectX 基于这样一组技术的目的Windows 计算机运行和显示了丰富的多媒体元素(如全色图形、视频、3D 理想的动画和丰富的音频应用平台。DirectX 包括安全性和性能更新程序,以及涵盖所有技术的许多新功能。可以使用应用程序DirectX API 访问这些新功能。
功用
字面意义上说,Direct这是直接的意思,而后面的X代表了很多意思。从这一点可以看出DirectX它的出现是为许多软件提供直接服务。
例如,以前在DOS当下骨灰级玩家玩游戏时,他们不能在安装上玩游戏。他们通常首先设置声卡的品牌和型号,然后设置声卡IRQ(中断)、I/O(输入输出),DMA(访问模式),如果设置错了,游戏的声音就不会发出来。这部分设置不仅让玩家头疼,也让游戏开发者头疼。
为了使游戏在许多计算机中正确运行,开发者必须在游戏制作开始时收集市场上所有的声卡硬件数据,然后根据不同的数据 API(应用程序接口)写不同的驱动程序。游戏制作公司很难完成这一点,所以当时多媒体游戏很少。微软看到了这个问题,众多厂商推出了共同的应用接口——DirectX。只要游戏是基础DirectX无论显卡、声卡型号如何,都可以玩,而且还能发挥最佳效果。当然,前提是必须支持显卡和声卡的驱动程序DirectX才行。
组成
DirectX是由很多API按性质分类,可分为显示、声音、输入和网络四个部分。
显示部分
图形处理的关键分为显示部分DirectDraw(DDraw)和Direct3D(D3D),前者主要负责2D图像加速。它包括很多方面:我们播放mpg、DVD电影、看图片、玩小游戏等。DDraw,你可以把它理解为所有划线的部分都用了DDraw。后者主要负责3D例如,显示效果CS中间的场景和人物,FIFA中间的人物等等,都是用的DirectX的Direct3D。
声音部分
声部中最重要的API是DirectSound,除了播放声音和处理混音外,还加强了3d音效,并提供录音功能。我们之前提到的声卡兼容的例子是使用它DirectSound来解决的。
输入部分
输入部分DirectInput它可以支持许多游戏输入设备,使这些设备充分发挥最佳状态和所有功能。除键盘和鼠标外,手柄、摇杆、模拟器等也可以连接。
网络部分
网络部分DirectPlay它主要是为具有网络功能的游戏而开发的,提供多种连接方式,TCP/IP,IPX,Modem,串口等供网络对话功能和保密措施外,还可以使用各种连网方式进行对战。
分类
DirectX它不是一个简单的图形API,由微软公司开发,应用广泛API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多个组件,它提供了一套完整的多媒体接口方案。只是其在3D优秀的图形性能使其他方面显得暗淡。只是其在3D优秀的图形性能使其他方面显得暗淡。DirectX开发之初是为了弥补Windows 3.1系统缺乏图形和声音处理能力,已发展成为对整个多媒体系统各方面都有决定性影响的界面。DirectX 应用程序编程程序编程接口(API)”,可为 Windows 该程序提供高性能速多媒体支持的程序。Windows 支持DirectX 8.它能增强计算机的多媒体功能。使用DirectX 可访问显卡和声卡的功能,使程序提供逼真的三维(3D) 图形和令人陶醉的音乐和声音效果。DirectX 使计算机的硬件性能很容易确定,然后设置匹配的程序参数。该程序使多媒体软件程序基于Windows 的具有DirectX 在计算机上运行兼容硬件和驱动程序,同时确保多媒体程序能够充分利用高性能硬件。DirectX 包含一组API,它可以访问三维图形加速芯片和声卡等高性能硬件的高级功能。这些 API 控制低级功能(包括二维(2)D)支持输入设备(如游戏杆、键盘和鼠标),控制混音和声音输出。构成DirectX 以下组件支持低级功能:Microsoft DirectDraw Microsoft DirectDraw API 加速硬件功能支持计算机视频适配器的快速访问。它支持在所有视频适配器上显示图形的标准方法,并且可以更快、更直接地访问加速驱动程序。DirectDraw 程序(如游戏和二维图形程序包)Windows系统组件(如数字视频编解码器)提供了一种独立于设备的方法来访问特定显示设备的功能,而不需要用户提供其他设备功能的信息。
Microsoft Direct3D API (Direct3D) :大多数新视频适配器内置3-D 配色功能提供界面。Direct3D 是低级3-D API,它为软件程序提供了一种独立于设备的方法,以便与加速器硬件加速器硬件通信。Direct3D 包含专用CPU指令集支持,为新计算机提供进一步的加速支持。
Microsoft DirectSound API :链接程序与音频适配器的混音、声音播放和声音捕获功能。DirectSound 在维护与现有设备驱动程序的兼容性时,为多媒体软件程序提供低延迟混合、硬件加速和直接访问声音设备。
Microsoft DirectMusic API :是DirectX 交互式音频组件。数字声音样本的捕获和播放DirectSound API 不同,DirectMusic 通过声卡或其内置软件合成器将数字音频和基于消息的音乐数据处理成数字音频。DirectMusic API 支持乐器数字界面(MIDI)输入格式也支持压缩和未压缩的数字音频格式。DirectMusic 为了响应软件环境中的各种变化,而不仅仅是用户直接输入变化,为软件开发能力,而不仅仅是用户直接输入变化。
Microsoft DirectInput API :输入包括鼠标、键盘和强力反馈游戏控制器等相关设备,为游戏提供先进的输入功能,并能处理游戏杆。
Microsoft DirectPlay API:通过调制解调器支持,Internet 或者局域网连接游戏。DirectPlay 在不受协议或在线服务的限制的情况下,简化了通信服务的访问,并提供了一种相互通信的方法。DirectPlay 提供多种游戏服务,可以简化多媒体播放器游戏的初始化,支持可靠的通信协议,确保重要游戏数据不会在网络上丢失。DirectPlay 8.0 新功能是通过网络支持语音通信,可以大大提高基于多媒体播放器组的游戏的娱乐性。同时,该组件还提供了与玩游戏的其他人交谈的功能,使团体游戏更具吸引力。
Microsoft DirectShow API:可以在你的计算机和Internet 多媒体文件的高质量捕获和回放在服务器上。DirectShow 支持各种音频和视频格式,包括高级流格式(ASF) (AVI)数字视频(DV)动画专家组 (MPEG)”、“MPEG 音频层3 (MP3)”、“Windows 媒体音频/视频(WMA/WMV)”以及 WAV 文件。DirectShow 还有视频捕获,DVD 回放、视频编辑与混合、硬件加速视频解码、调谐广播模拟与数字电视信号等功能。
发展历史
DirectX 1.0
第一代的DirectX很不成功,很多硬件都不支持,当时基本都是专业图形API-OpenGL,缺乏硬件支持已成为其流行的最大障碍。
DirectX 1.0版本是第一个可以直接读取硬件信息的程序。它提供了更直接的图形硬件读取性能(如显示卡上的块移动功能)和基本的声音和输入设备功能(函数),使开发的游戏可以实现二维(2D)加速图像。第一代。DirectX不包括所有3D功能,还处于初级阶段。
DirectX 2.0
DirectX 2.0对二维图形进行了一些改进,增加了一些动态效果Direct 3D的技术。这样DirectX 2.0与DirectX 1.0差别很大。在DirectX 2.采用平滑模拟与RGB三维(3模拟两种模拟方法D)加速计算图像。DirectX 2.0还采用了更友好的用户设置程序,纠正了应用程序界面的许多问题。从DirectX 2.0开始,整个DirectX设计架构的雏形已基本完成。
DirectX 3.0
DirectX 3.1997年最后一个版本推出了0Windows95发布后不久,3D游戏开始深入人心,DirectX也逐渐得到软硬件厂商的认可。97年有三个应用程序接口标准,分别是专业的OpenGL接口,微软DirectX D接口和3DFX公司的Glide接口。而那时的3DFX该公司是最强大的显卡制造商Glide界面自然应用最广泛,但3DFX公司的衰落,Voodoo显卡下降,Glide界面逐渐消失。
DirectX 3.0是DirectX 2.0的简单升级版,对吧DirectX 2.0变化不大。DirectSound(针对3D声音功能)和DirectPlay(游戏/网络)的一些修改和升级。DirectX 3.0集成了简单的3D效果不是很成熟。
DirectX 5.0
微软没有推出DirectX 4.而是直接推出DirectX 5.0。此版本对Direct3D做出雾化效果增加了很大的变化,Alpha混合等3D特效,使3D增强了游戏中的空间感和真实感,加入了S纹理压缩技术。
同时,DirectX 5.0还加强了其他组件,改进了声卡和游戏控制器,支持了更多的设备。DirectX发展到DirectX 5.0才真正成熟。这个时候DirectX性能不亚于其他3D API,而且后来居上的势头很大。
DirectX 6.0
DirectX 6.其最大的竞争对手之一争对手之一Glide,逐渐走向衰落,DirectX它得到了大多数制造商的认可。DirectX 6.加入双线性过滤、三线性过滤等优化3D游戏中的图像质量技术,3D技术逐渐进入成熟阶段。
DirectX 7.0
DirectX 7.最大的特点是支持0T&L,中文名称为坐标转换与光源。3D游戏中的任何物体都有一个坐标。当物体移动时,它的坐标发生变化,这意味着坐标转换;3D除了游戏中的场景+物体还需要灯,没有灯就没有3D物体的性能,无论是实时3D游戏还是3D图像渲染,加上灯光3D渲染是最消耗资源的。虽然OpenGL有相关技术,但以前从未出现在民用硬件中。
在T&L位置转换和照明出现前都需要CPU来计算,CPU游戏表现越快越流畅。使用了T&L功能结束后,用显示卡计算这两种效果GPU这样你就可以计算了CPU摆脱繁忙的劳动。换句话说,拥有T&L使用显示卡DirectX 7.即使没有高速CPU,也能顺利跑3D游戏。
DirectX 8.0
DirectX 8.0的推出引发了一场显卡革命,首次引入了像素渲染的概念(Pixel Shader)与顶点渲染引擎(Vertex Shader),动态光影效果反映在特效上。同硬件T&L与实现的固定光影转换相比,VS和PS单元更灵活,使其更灵活GPU真正成为可编程处理器。这意味着程序员可以通过它们实现3D场景建设难度大大降低。通过VS和PS渲染,很容易创造真正的水动态波纹光影效果。此时DirectX权威地位终于建成。
DirectX 9.0
2002年底,微软发布DirectX9.0。DirectX 9中PS传统硬件的渲染精度已达到浮点精度T&L该单位也被取消了。全新的VertexShader编程将比以前复杂得多,新的VertexShader标准增加了流程控制,每个程序的着色指令增加到1024条。
PS 2.0具有完全可编程的架构,可以立即计算纹理效果,动态纹理地图,不占用显存,理论上提高材料地图分辨率的精度;此外PS1.4只能支持28个硬件指令,同时操作6个材料PS2.0可支持160个硬件指令,同时操作16个材料数量,新的高精度浮点数据规格可使用多个纹理贴图,可操作的指令数任意长,电影级显示效果易于实现。
VS 2.0通过增加Vertex程序的灵活性显著提高了旧版本(DirectX8)的VS性能,新的控制指令,可以用通用程序代替以前的特殊单独着色程序,效率提高了很多倍;增加循环操作指令,减少工作时间,提高处理效率;扩大着色指令数量,从128增加到256。
增加浮点数据的处理功能,以前只能处理整数,从而提高渲染精度,使最终处理的颜色格式达到电影水平。突破了以前的限制PC图像质量的数学精度障碍,每条渲染线升级为128个浮点颜色,使游戏程序设计师更容易创造更美丽的效果,使程序员更容易编程。
DirectX 9.0c
与过去的DirectX 9.0b和Shader Model 2.0相比较,DirectX 9.0c最大的改进是引入正确的Shader Model 3.0(包括Pixel Shader 3.0 和Vertex Shader 3.全面支持02种着色语言规范)。举例来说,DirectX 9.0b的Shader Model 2.0所支持的Vertex Shader最大指令只有256个,Pixel Shader只有96个最大指令。而在最新的Shader Model 3.0中,Vertex Shader和Pixel Shader最大指令数大幅上升至65535,新的动态程序流控制、位移地图、多渲染目标(MRT)、次表面散射 Subsurface scattering、柔和阴影Soft shadows、环境和地面阴影Environmental and ground shadows、全局照明(Global illumination)等新技术特性,使得GeForce 6、GeForce 7系列以及Radeon X1000系列立即为新一代游戏和复杂的数字世界和具有无与伦比真实感和幻想性的人物在影视质量环境中的活动提供了强大的动力。
因此DirectX 9.0c和Shader Model 3.0标准的推出可以说是DirectX发展过程中的重要转折点。在DirectX 9.0c中,Shader Model 3.0除了取消命令限制和添加位移地图等新特征外,更多的特征是努力解决游戏的执行效率和质量,Shader Model 3.0诞生后,人们对游戏的态度开始从过去简单地追求速度,转变为游戏画质和运行速度。因此Shader Model 3.0对游戏产业有着深远的影响。
DirectX 10.0
包含在Windows Vista在操作系统中,不能单独下载使用。
新的DirectX使您获得更好的图像显示质量,使多人游戏具具有可伸缩性,包括更好的音频效果。它强化了针对性DirectDraw和Direct3D界面简化了应用扩展,提高了性能;图形创作工具的改进更容易做出最好的3-D角色和环境;点光源光影和像素光影使图像更加逼真;强化DirectSound和DirectMusic,简化其应用扩展;DLS音频合成功能提高了乐器音频的真实性;DirectInput设备的影射功能使设备的支持更容易;DirectPlay提高了多人游戏的性能和可扩展性; DirectPlay提供了IP声音通讯;DirectShow实时合成和即时编辑音频/视频的应用编程接口;DirectShow支持Windows媒体音频和视频(WMA和WMV)的读写; Microsoft TV支持数字电视节目的技术。当然,最重要的是一些新游戏需要它。DirectX Redist通常每两个月更新一次,包括DirectX Runtimes所有更新都可以取代之前发布的旧版本,适合Windows XP、Windows Server 2003、Windows Vista不支持等待操作系统Windows 9x/2000。一般最新的3D游戏和其他应用程序都需要新的DirectX因此,强烈新接口。
Vista DX10用户也需要。
支持显卡DirectX从显卡支持什么版本来看,版本已经成为评显卡性能的标准。DirectX,用户可以区分显卡的性能,从而选择适合自己的显卡产品。
DirectX 10.1
正如以前的DX版本一样,DX10.1也是DX因此,它将支持10超集DirectX 同时,它将支持更多的功能,提供更高的性能。
DX10.1的主要改进是改进shader资源存取功能,多样本AA读取样本时,有更好的控制能力。DX10.还将创建定制的下行采样滤波器。
DX10.1.还将有更新的浮点混合功能,对渲染目标更有针对性,对渲染目标混合将有新的格式,渲染目标可以实现独立的混合。阴影功能一直是游戏的一个重要特效,Direct3D 10.1 还将提高阴影滤波功能,从而进一步提高画质。
性能方面,DirectX 10.它将支持多核系统具有更高的性能。当渲染、反射和散射时,Direct3D 10.1将减少对API调用次数,从而提高性能。
其他方面,DX10.1有很多改进,包括32bit浮点滤波可以提高渲染精度,提高HDR渲染的画质。抗锯齿应用程序的完全控制也将是DX10.应用程序将控制多个采样和超级采样的使用,并在特定场景中选择采样模板。DX10.至少需要单像素四采样。
DX10.还将引入更新的驱动模型,WDDM 2.1。与DX10的WDDM2.0相比,2.有一些显著的改进。
一是内容转换功能较多,WDDM2.在处理命令或三角形后,支持内容转换WDDM2.可立即进行内容转换。由于GPU多个线程应并行处理,因此内容转换的即时性不仅可以保证转换的质量,还可以提高GPU减少等待时间。另外,由于WDDM 2.1支持基于过程的虚拟内存分配和处理GPU而驱动页面的错误方式也更加成熟。
预计微软将在两周内(2008年7月中旬)宣布新一代API:DirectX 11.消息来源指出,微软将于7月22日举行Gamefest 2008年宣布新一代API,以前我们得到了相关的DirectX 最新消息11是NVIDIA八月底的NVISION 会上讲解08DirectX 11。
由微软组织Gamefest 7月22日至23日,2008年会议将在西雅图举行。Gamefest 2008年会议是微软每年的游戏技术讨论活动,因此关于下一代游戏技术界面API新闻自然是必不可少的话题。
DirectX 11引入最大的新技术特征无疑是Tessellation/Displacement,我们还听说过多线程渲染,Compute Shaders也将是DirectX 据说11中的重要环节DirectX 11还将引入Shader Model 5.0.具体细节尚不清楚,Ray Tracing(光线跟踪)和Rasterization(光栅化)技术支持尚未提及。
DirectX 11
微软将于2009年1月9日星期五向公众发布Windows 7客户端Beta 1测试版。微软将在前一天率先发布,也就是1月8日Windows 7服务器版本Beta 1测试版。
在微软发布Windows 7Beta在版本中,一些安装用户发现了它DirectX 已包含11。DirectX 11作为3D图形接口不仅支持未来DX11硬件也向下兼容当前硬件DirectX 10和10.1硬件。DirectX 增加了新的计算shader允许技术GPU不仅仅是3D这可以鼓励开发人员更好地计算GPU用作并行处理器。
在微软发布Windows 7 Beta已包含在版本中DirectX 11
另外,DirectX 11还支持tessellation镶嵌技术有助于开发人员创建更加精致流畅的模型,实现高质量的实时渲染和预渲染场景。多线程是DirectX 另一个亮点是11,DX多线程资源可以更好地利用,使游戏更有效地利用多核处理器。
DirectX 11.1
2011年10月15日,微软公布了一份白皮书Windows在开发者预览版中Windows驱动模型增强,深入介绍Windows 图形技术的改进。根据白皮书,Windows 88将支持新版本的显示驱动模型WDDM1.2,高于Windows 7 WDDM 1.1.但同时放弃服务器系统XDDM支持,全转向WDDM。
DirectX当然,最关键的方面是引入Direct3D 11.1.同时会有平滑旋转和立体3D、D3D11 Video等功能技术。微软表示,即使是低端硬件,只要能充分利用DirectX优势,也可以Windows 性能更好。
DirectX 11.2
2013年6月28日,微软发布Directx11.2(Alpha版本),其中一个重要特点是允许游戏使用系统内存和显示存储纹理数据,微软Antoine Leblond在BUILD会议演示了内存的主要使用,而不是存储9GB纹理数据。这一特点对未来的高清游戏具有重要意义。但问题是,DirectX 11.2不支持Windows 8.以前的操作系统只支持Windows 8.一、下一代主机Xbox One。
DirectX 12
2014年3月21日,微软正式发布新一代API DirectX 12.虽然不是全新的设计,虽然细节不是特别多,但至少不是Mantle微软和合作伙伴设计的很多新东西都是直接翻版的。
DX12最重要的变化是底层API ,这一点很像AMD Mantle,在硬件抽象层上走得比以前更深,可以同时减少CPU、GPU的过载(overload)。具体包括:应用程序可跟踪GPU流水线、控制资源状态转换(如从渲染目标到纹理)、控制资源重命名、较少API和驱动跟踪,可预测属性等。
另外,DX大大提高了多线程效率,充分发挥了多线程硬件的潜力。DX11在这方面受CPU性能受到严重限制,主要是因为多核心不能得到有效利用。微软声称微软有多核心CPU利用几乎是线性增长,也就是说四核可以接近单核的四倍。
DirectX 12 Ultimate
2020年3月20日,微软正式发布新一代游戏图形API:DirectX 12 Ultimate,而NVIDIA第一时间表示旗下RTX 20**完美支持系列显卡。
资深玩家都知道,自从DirectX 7.0开始,每一代DirectX版本更新将带来图形技术的重大升级(例如)DirectX 7.首次支持硬件T&L、DirectX 8.0/8.1开始支持Pixel Shader&Vertex Shader……),所以这次DirectX 12 Ultimate(以下简称DX12U),相对DX12什么升级带来了下一代黑科技?
四大重点黑科技,DX12U升级很实在

首先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 光线跟踪的软件特性使其更高效,对开发者更友好。主要有三点:
允许GPU直接调用光追
跑在GPU上面的着色器可以在1.1版本中直接调用光跟踪,无需折返CPU来调用该功能对自适应光跟踪场景非常有用,特别是在基于着色器的消除、排序、分类和细化场景中。基本上,未来的光跟踪工作可以进行GPU以上准备并立即生成。
按需加载光跟踪着色器
当玩家在游戏世界中移动,新物体变得可见时,流动引擎可以根据此时的图像需要加载新的光跟踪着色器,以提高处理过程的效率。
内光跟踪
内光跟踪(Inline raytracing)它是基于动态着色器的光跟踪的替代形式,您可以将其理解为简化的光跟踪。开发者在内联光跟踪过程中会有更大的控制权,可以在任何着色阶段调用,包括着色和像素着色阶段的计算。它可以与传统的基于动态着色器的光跟踪混合使用。对于简单的场景,内部光跟踪将提供更好的性能性能,而在复杂的场景中,基于动态着色器的光跟踪将提供更好的操作效果。
可变速率渲染
可变速率渲染(Variable Rate Shading)是一项由NVIDIA在其Turing GPU具体介绍可以看到我们的课堂文章:超级课堂(212):VRS为什么变速率着色能提高帧数?这里简单说一下它的原理,不再赘述细节。
简单来说,VRS其原理是通过改变单像素着色器操作处理的像素数量来改变屏幕不同区域的着色质量。简单地说,它可以改变同一画面中不同部分的渲染精度,其用途是提高画面帧数。

在不开启VRS正常情况下,一帧画面的所有像素都是独立着色的;打开VRS之后,原本独立的像素被分成像素块,分享着色结果GPU所有像素块将根据程序员设置的重要性分配不同的着色精度。以上图为例。车辆和视觉部分的像素仍然是独立着色的,但快速变化的道路和路边的像素块是由块共同着色的。此时,由于节省了显卡的计算资源,游戏的帧数将会增加。
在NVIDIA以外,Intel已经在Ice Lake在处理器理器中的第11代验证中VRS的支持,而AMD暂时没有相关的支持,但他们已经宣布将在那里RDNA 在架构中增加相关支持。
Mesh着色器:下一代几何管道处理的基础
在过去的20年里,传统的几何图形处理管道已经增加了几个阶段,但它的核心概念仍然基于传统的光栅预着色方法,今天太复杂了,拖累了处理效率。硬件和软件开发人员都想改变这种情况,所以,DirectX 12引入了Mesh着色器为开发者提供了前所未有的可编程能力。

在原管道中,GPU硬件的并行能力被隐藏或自动化,硬件有助于包装和执行,这是非常有效的,但也存在问题——灵活性不够。
Mesh着色器完全改变了这个过程,它不再针对单个顶点或图元的单个函数,而是在整个计算线程组中工作。在某一阶段,Mesh着色器的每个线程都针对一个顶点,而在另一个阶段,每个线程针对一个图元。整个线程组的内存共享,访问灵活性高,开发人员对硬件的控制更大,甚至可以激发新技术,节省内存使用和带宽。

与Mesh另一种可选的放大着色器出现在一起(Amplification Shader)它在阶段运行Mesh在着色器之前,计算需要多少个Mesh着色器,并启动它们。

采样器反馈
最后一个特点是采样器反馈(Sampler Feedback),先说效果:视觉质量更好,加载时间更短,卡顿更少。其核心思想其实是让程序只加载必要的纹理,把资源交给更需要的地方。
采样器反馈允许游戏引擎跟踪纹理采样器的使用,使后者能够生成反馈图(Feedback Map)它将记录不同纹理区域的不同停留水平,然后程序可以根据这些反馈做出决定——包括如何使用纹理采样器以及在显存中保留哪些资源。计算资源的分配比原来的流程更准确。简单来说,它的实际效果就是用更少的显存渲染出更大更详细的纹理。

此外,采样器反馈还允许一种新技术——纹理空间着色。它可以在不格栅对象的情况下着色对象,旨在缓存和重用着色结果,减少着色效果GPU的计算量。
总结:新图形架构和下一代主机
在微软推出DirectX 12 Ultimate之后,NVIDIA和AMD事实上,已经/将支持它的迅速宣布,DirectX 12 Ultimate大部分新特性都可以说是基于Turing架构来的,NVIDIA在设计Turing该架构预留了相当一部分新特性未公开。而AMD目前只能说是跟进者,要用新的特点,首先要等到年底RDNA 2架构。
DirectX 12 Ultimate这些特点显然有两个共同的目标,一是提高开发者对硬件的控制,二是提高整体计算效率。这也是下一代主机——Xbox Series X和传说中的Xbox Series S很难说我们需要等多长时间才能看到这些特征应用于实际游戏——至少今年我们看不到它们。我们需要等到引擎开发者和游戏开发者适应新一代主机或进行特殊开发PC这些技术在游戏中也有应用。
以上就是DirectX 12 Ultimate由于我不是业内人士,对这些特征的理解只是一点点,所以不可避免地会出现认知错误。请纠正。
2022-05-19 22:33:50
admin
200次阅读