如何获得最佳游戏体验?第一答案当然是选择优秀的高性能显卡,如GeForceRXT30系。但是在此之外,一款优秀、稳定的显卡驱动也是必不可少的要素。很多时候,显卡驱动不仅仅是“让显卡正常工作起来”那么简单,而且还承担着保证游戏稳定性,以及发挥出显卡更强性能、为玩家带来更多更便利的附属功能等作用。毫无疑问,优秀的显卡驱动程序能让玩家在游戏中如鱼得水,事半功倍。那么一款优秀的显卡驱动是如何炼成的?在它的背后有着怎样的故事?今天让我们一起走近NVIDIAGeForceGameReady驱动的世界。
文章所涉及数据资料及图片来源于NVIDIA官方
就在你看到本文的前一刻,NVIDIA刚刚发布了最新的GameReady驱动,新版本的驱动带来了全新的ReflexStats功能,支持即时游戏延迟的测量,并且表明这款驱动也是专为《沙丘:香料战争》(《Dune:SpiceWars》)所打造。
为热门游戏打造“专享优化”驱动,这些年来我们在GameReady驱动的各个版本迭代过程中也见到了不少。或许不少玩家还心存疑惑——为一款或某几款游戏的优化就单独推出一个版本的驱动,是否有些“小题大做”?其实不然!事实上,自从年5月的首秀以来,8年来NVIDIAGameReady驱动就一直秉承着“让Game真正Ready”的理念,不断完善、修正、扩充着GameReady的功能与性能。或许在很多玩家看来,驱动的作用不过是让显卡保持正常工作而已,但其中背后的故事,如果你了解之后,或许会让你产生“原来如此”的感叹。下面,让我们先把新发布的驱动版本放在一边,首先深入GameReady驱动,来看看它有着怎样的故事。
双模式工作通信,显卡驱动基础原理浅析
在了解GameReady驱动的故事之前,首先我们要简单了解一下显卡驱动的工作原理,只有明白了它是如何工作的,才能真正了解到GameReady驱动到底做了哪些事情。
在Windows操作系统中(MacOS或Unix等系统同理),系统会提供两种操作模式,一种称为用户模式(UserMode),一种称为内核模式(KernelMode)。用户模式显然就是面向玩家的,在这种模式支配下,玩家们可以在操作系统中顺畅地运行各类游戏、软件。而内核模式则是面向硬件的,它所起的作用是让操作系统能够顺畅地与硬件资源通信并调用硬件资源进行各种处理工作。那么,如何才能让硬件实现与操作系统或应用软件、游戏等的通信?答案就是驱动。
回到GameReady驱动。针对操作系统的模式分层,GameReady驱动也划分出了对应的两种操作模式。其中用户模式模块是与游戏直接通信,让玩家能够操作游戏“玩起来”。而GameReady驱动的内核模式模块则是负责处理与GPU的通信,让游戏能够正常实现程序设定的渲染与输出。
从上面这张图我们可以清楚地看到,在你玩游戏的过程中,其实涉及的是一个非常复杂的处理过程。系统的DirectXAPI运行环境模块会管理驱动用户模式模块与游戏之间的通信,而DirectX的图形内核模块则要负责与驱动内核模式模块之间的通信,驱动内核模块则会直接访问GPU资源并调用其对游戏程序进行渲染计算。
所以,这个过程包括了游戏程序本身、Windows系统的DirectXAPI、Gameready驱动以及GPU之间,在两种模式工作下的相互通信。其中但凡有任意一个环节出现了通信错误,都极有可能产生游戏性能损失、游戏报错甚至导致系统崩溃的事情发生。
可以看到,显卡驱动在这一运行过程中扮演着非常重要的承上启下的角色,可以说玩家们的游戏体验优秀与否,与显卡驱动的性能直接相关。
GameReady驱动,稳定与可靠性至关重要
对玩家来说,怎样才能获得舒适的游戏体验?很多人会第一时间说“帧率”。确实,平均fps的高低是游戏流畅与否的直接决定因素,也是显卡性能的直接体现。但是,在平均fps之外,最低帧率、帧时间、游戏操作延迟时间等因素也同样不能轻视。另外,很多玩家其实在游戏过程中还往往会忽略一个问题,那就是驱动的稳定性与可靠性。相信不少老玩家在WindowsXP时代都经常遇到过游戏莫名其妙崩溃、闪退等问题,其实这都是由于驱动程序的不稳定或对于游戏的优化不好所导致的。那么一款显卡驱动程序应该如何保证其稳定性与可靠性?GameReady说,我是这样做的。
从游戏开发到上市,持续合作优化改进
在NVIDIA看来,要保证对游戏的完美“兼容”与优秀的稳定性,越早介入越能解决问题。因为任何游戏bug的存在,都会造成对游戏体验的毁灭性影响,而显卡驱动就应该对这些问题进行相应的优化,以便提供优秀的游戏体验。
所以,NVIDIA在开发GameReady驱动的每一个版本之前,都与游戏开发商进行密切合作,不断反复测试和优化游戏并开发可靠的GameReady驱动,确保玩家从始至终获都能获得尽可能出色的游戏体验。
在游戏的立项、开发过程中,NVIDIA的驱动开发团队都与游戏开发商保持着顺畅的沟通。在游戏开发中遇到的任何与显卡相关的问题都会被反馈到驱动团队,经过驱动优化之后再返回游戏开发团队。在这个过程中游戏团队与驱动团队之间始终保持着交换早期开发游戏版本(先行版)和驱动的固定节奏。在这一过程中,双方会合作寻找最佳的游戏优化方案并解决相关问题以及进行相应的游戏及驱动版本迭代。显然,这样可以确保游戏和GameReady驱动都能在发布时提供更高的质量和性能。
通常情况下,游戏开发商在Beta测试版修正之后就会对游戏赋予“Gold”的正式发布前版本(即所谓的黄金版),在这个时候游戏开发商基本已经停止了对游戏内核版本的大修改,而将重心转到了bug修复和补丁上。不过对于GameReady驱动团队来说,针对该游戏的驱动持续优化仍在进行,这样可以确保从游戏上市开始一直到后续的补丁、DLC的推出,都能持续不断地为玩家提供更好的体验。
另外,在游戏开发过程中,开发商对于DirectX、Vulkan等图形API规则的使用方式,甚至对某个API的调用时间长短,都会在一定程度上影响游戏与显卡的性能发挥。因此在整个游戏开发过程中,驱动团队通过使用合适的工具,如上图所示的NVIDIANsightGraphics,来查看游戏的每一个细微差别,并优化工作流程,从而实现消除瓶颈、提升性能的目标,并在很大程度上提高了驱动程序的稳定性。
广泛测试、WHQL认证,确保可靠稳定
在与游戏开发商保持密切合作之外,NVIDIA又是如何从多方面来保证GameReady驱动的可靠稳定性的呢?
NVIDIA的官方资料显示,每一个版本的GameReady驱动正式发布都经过了堪称“恐怖”的广泛测试,而且这些测试是基于大量的硬件基础。在NVIDIA的驱动开发团队实验室内,有超过种不同的GPU、CPU搭配的台式机或笔记本电脑,这些电脑的硬件组合最早的甚至可以追溯到10年前。通过这些不同年代、不同性能的硬件组合的严苛考核,自然就能大大提高GameReady驱动的稳定性与可靠性。NVIDIA官方宣称,整个GameReady驱动的测试流程会涉及多个不同的测试,其中就包括海量的已发布或即将推出的游戏。有数据显示,仅在年,GameReady驱动团队的测试时间就已经超过了万小时。换句话说,NVIDIA每年在提升GameReady驱动质量与稳定可靠性上所花的累积总时间长度已经超过了年!
在驱动程序的测试过程中还为每款驱动的可玩设置优化提供支持,通过GFE的内置功能,Ops会确定适应玩家台式电脑和笔记本电脑特定硬件配置的合适游戏设置。对于那些不太懂得如何细调游戏画质设置的玩家来说,可以一键获取出色画质和性能。
再来说说WHQL认证。我们都知道,WHQL是微软Windows硬件质量实验室首字母的简称(WindowsHardwareQualityLab),WHQL会采用严苛的质量测试套件来测试硬件驱动的兼容性与稳定性,并在通过测试之后给予驱动WHQL的认证签名。
其实玩家们也应该发现了,NVIDIA几乎没有公开发布过测试版、Beta版的驱动。其实这就像正式版的游戏一定会比测试版的游戏BUG更少一样,NVIDIA也一直认为只有质量和稳定性达到了严格的高标准要求之后,才能提供给玩家使用,这样自然就能够最大程度地保证驱动的稳定与可靠。所以,我们从NVIDIA