五款游戏论API!DirectX和Vulkan差距都有啥?

您所在的位置:网站首页 中国股市赚钱的只有这两种人 五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

#五款游戏论API!DirectX和Vulkan差距都有啥?| 来源: 网络整理| 查看: 265

五款游戏论API!DirectX和Vulkan差距都有啥? 2020-04-27 11:28:38 42点赞 19收藏 34评论 前言

“游戏FPS被设置影响是怎么回事呢?游戏FPS相信大家都很熟悉,但是游戏FPS被设置影响是怎么回事呢?下面就让小编…”

咳咳,如此正经的我是不会干水贴这种事情滴~

五款游戏论API!DirectX和Vulkan差距都有啥?

不过有一说一,经常倒腾游戏的玩家对于游戏的画质设置想必又爱又恨,灵活的画质调整选项意味着玩家可以捣鼓出更适合自己的搭配,但随着游戏越来越“花里胡哨”,令人摸不着头脑的画面选项也越来越多了。尤其是近年来Vulkan逐渐走入大众视野,玩家除DirectX、Metal以外要研究的API又多了一个。

五款游戏论API!DirectX和Vulkan差距都有啥?

面对这么多专业名词,“图一乐”的玩家想完全弄明白还是比较困难的,不过没关系,今天我就来带大家康康,在不同的游戏和环境中,DX11、DX12和Vulkan之间都会有什么差别吧。

正文

五款游戏论API!DirectX和Vulkan差距都有啥?

首先简单讲一下测试平台,为了尽可能贴合市场主流PC性能,本次测试我使用了AMD Ryzen 5 3600X处理器,目前锐龙架构自带的PBO已经可以带来相当不错的游戏性能,所以不再进行额外超频,内存为了贴近大部分玩家可以接受的性价比,只把双通道32G内存频率设置在2666Mhz(手上没有单根8G的条,组不出双通16G大家别骂我)。

五款游戏论API!DirectX和Vulkan差距都有啥?

然后是蓝宝石白金版的RX5700XT显卡。5700XT作为目前A卡阵营的扛把子,性能和N卡的2070Super难分胜负,价格却比对手便宜了不少,其性价比在目前同价位显卡绝对中鹤立鸡群。

五款游戏论API!DirectX和Vulkan差距都有啥?

目前能对API能效进行跑分测试的只有3DMark,其专用的API开销测试功能可以很好地反映出DX11、DX12和Vulkan三种API在同样场景下的算力开支(与3DMark传统的跑分项目不同,API开销测试不会针对电脑的性能进行直观测试)。

图中的顺序从左到右依次是DX11、DX12和Vulkan,通过对比不难发现,如果在DX11和DX12之间对比,DX12对于显卡的资源调用明显优于DX11。

而对比DX12和Vulkan的数据,两者其实在“性能足够”的情况下帧数相差很小,但是随着场景越来越复杂,DX12的帧数会快速下跌,而Vulkan的平均帧数则坚挺的更久一些。

另外在帧数相同的前提下,Vulkan的显卡运算压力也明显小于DX12。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

当然单纯看一个理论上的测试软件肯定是不合理的,先放一下基础的TimeSpy和Fire Strike测试,3600X+5700XT的组合分别得分8625和21567。

五款游戏论API!DirectX和Vulkan差距都有啥?

目前市面上比较新的游戏,均没有同时支持DX11、DX12和Vulkan的例子,所以我分别测试不同API接口并且特色鲜明的五款游戏,来分别进行解释。

DX11的游戏的小问题?

五款游戏论API!DirectX和Vulkan差距都有啥?

首先是《骑马与砍杀2:霸主》,这是一款纯DX11环境的游戏,在1080P分辨率下开启游戏预设的“非常高”画质进行测试。

五款游戏论API!DirectX和Vulkan差距都有啥?

骑砍系列的老玩家应该知道骑砍系列自己在城里逛和上阵打仗,那帧数完全是两种层次,并且由于骑砍2从面世到现在经历的时间沉淀还远不如砍1,所以各路Mod的数量也无法让人说骑砍2的完成度有多高(没错,这游戏不打Mod基本算白玩)。

五款游戏论API!DirectX和Vulkan差距都有啥?

在城镇与大地图移动、NPC基础交互等场景时,3600X+5700XT的帧数表现其实相当不错,最高画质下稳定一百以上的FPS完全没有问题。

五款游戏论API!DirectX和Vulkan差距都有啥?

那么到了实际战斗的情况下会怎么样呢?为了控制变量,我在自定义战斗中分别给双方设置了完全一样的兵种比例,每次只改变双方的军队人数(即作战单位数量),分别测试50V50、250V250和500V500情况下的帧数表现。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

首先是在双方军队还没有接触的时候,可以看到100人规模(50V50)的游戏对局,帧数表现非常好,500人规模(250V250)的对局帧数也还不错,而1000人规模(500V500)的对局帧数则大幅低于其他两种对局。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

而在双方军队即将接触的那一刻,能够很明显的看出100人对局和500人对局的显卡都在很好地发挥性能(需要注意的是读取信息的MSI Afterbuner总是存在一定误差,所以除FPS以外的数值只做参考),但是在1000人对局中,游戏对CPU性能的榨取陡然爬升,导致了显卡没能很好地发挥出全部性能。

反过来看,100人对局中虽然显卡在兢兢业业地计算画面,但是CPU利用率却远不如其他场景,说明在显卡性能不足的情况下,DX11的CPU无法补足显卡缺失的性能。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

而在双方大规模交战的状况下,500人对局的帧数出现了小幅度的下滑,100人和1000人的对局帧数却都没有太大变化,说明两者的性能基本都已到达瓶颈,不过一个瓶颈在GPU,一个瓶颈在CPU。

而这也进一步证实了,在传统DX11环境下的游戏,CPU/GPU任何一方的性能不足,都会影响另一方的发挥,而且强的一方无法给弱势一方补强。

DX12游戏的局限性?

五款游戏论API!DirectX和Vulkan差距都有啥?

然后来看看同时支持DX11和DX12的《怪物猎人世界:冰原》,保持在1080P分辨率下开启游戏预设的“最*级”画质,分别测试主机在DX11和DX12环境下的运行情况。

本文所有参数截图,同场景顺序均为DX11在前、DX12次之、Vulkan在后,如果看混了也可以根据左上角的“D3D11”、“D3D12”和“Vulkan”来区分。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

首先是打造装备和玩家集合处的帧数,可以明显看到DX12环境下对于显存和内存的调用都优于DX11,所以帧数也比DX11高。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

到了一些植被/体积雾比较多的场景,虽然帧数出现了一定程度的下跌,但是依然可以看出DX12对于显存和内存的调用测量更胜一筹,帧数更高。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

另外可以发现,DX12相对DX11的帧数优势似乎与场景复杂程度无关(在不卡顿的前提下),无论是60-70帧,还是100-110帧,DX12对比DX11所高出的帧数基本都维持在10帧前后,这也就意味着至少在《怪物猎人》中,帧数高的时候DX11和DX12差别不会很大,但是在帧数比较低的时候DX12的优势就比较明显。

五款游戏论API!DirectX和Vulkan差距都有啥?

然后是《生化危机3重制版》,同样是在1080P分辨率下测试,画面设置为游戏预设的“最大值”。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

仔细观察这几个场景下的硬件占用和帧数情况,是不是发现好像有什么问题?别着急,再接着往下看。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

前面我们讲到了DX12的硬件资源调用优于DX11,生化3重制版的运行情况也证明了这一点,但同时它也显示出了DX12的一个弊端——DX12对比DX11带来的帧数提升并不是稳定或者线性的,DX12的资源占用总会高于DX11,但是在某些情况下帧数可能还不如DX11,形成了一种“吃的更多出力更少”的尴尬局面。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

后续的一些数据也佐证了这一点——DX12利用了比DX11更多的资源,但是并不一定能明显领先与DX11的帧数表现,有些场景甚至还不如DX11。

这就说明了DX环境并非单纯的加减法就能改变游戏表现,虽然更新的API可以带来实打实的资源调用提升,但是多占用的资源能不能完全发挥出价值就不完全可控了,基本全看游戏开发商的“优化”能力。

Vulkan能否吊打DX?

五款游戏论API!DirectX和Vulkan差距都有啥?

不怎么关注游戏咨询的玩家可能对Vulkan略感陌生,但是其实各路游戏开发商对于Vulkan都欢迎到极点——其实Vulkan从发布到现在也才大概五年的时间,但是市面上诸如DOTA2、彩虹六号、无人深空等游戏都已经对Vulkan接口进行了适配和支持,就连国内的剑网三、王者荣耀等游戏都有了Vulkan版本。

目前育碧旗下的幽灵行动和彩虹六号均已增加了Vulkan版本,只需要在打开游戏时选择即可。

五款游戏论API!DirectX和Vulkan差距都有啥?

《幽灵行动:断点》对于电脑性能的要求还是很高的,我在测试时选择1080P分辨率,画质调整为游戏预设的“终极”。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

我们不难发现,其实Vulkan对比DX11的显卡和内存的调用存在并不明显的一段差异,而Vulkan对CPU的调用明显优于DX11,Vulkan在占用更少CPU资源的前提下抛出了大幅领先DX11的帧数,一定程度上形成了“吃得少干得多”的情况。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

在部分情况下,Vulkan和DX11的CPU占用比例甚至接近了1:2。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

然后对比一下DX11和Vulkan测试的综合结果,总体来看Vulkan的帧数是明显高于DX11的,而且CPU的需要面临的压力也明显小于DX11,与之相对的是Vlkan对于显卡的调用其实并不完全高于DX11,只是相对来说比DX11要稳定很多(DX11的显卡调用在部分情况下会下滑到几乎离谱的情况)。

五款游戏论API!DirectX和Vulkan差距都有啥?

《荒野大镖客2》同时支持DX12和Vulkan两种接口,是一款非常值得拿来对比的游戏,在1080P分辨率下,画面设置选用游戏预设的“注重质量”。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

由于“大表哥2”的画质远比前面几款游戏好,相对更低的帧数意味着需要更多数据才能得出科学的结论,不过有一说一这DX12比Vulkan多吃我1.5G内存简直就离谱。

(GPU占用0?MSI你又开始了是吗?)

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

室内场景,可以看到此时的DX12比Vulkan多占用了大约3G的内存,但是帧数还是被Vulkan压制了十几帧的样子。

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

在角色快速跑动和射击时,由于画面素材变化很大,所以两API接口对于内存的榨取也更多,但是随着DX12比Vulkan多占用的内存越来越多,前者的帧数和后者差距也越来越大…

(这DX12多吃3G内存只跑一半帧数我真是没想到的,为什么你只是看着啊DX12前辈,难道你真的背叛我们了吗???)

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

五款游戏论API!DirectX和Vulkan差距都有啥?

测试完之后我看了一下DX12和Vulkan的完整数据,我只能说自己是真没给Vulkan作弊,截图也能看到两套测试的画面精细度没什么差别,可以说在大表哥2这一游戏中,DX12完全是被Vulkan打的丢盔弃甲(菠萝菠萝哒)。

一开始,我们以为DX12多吃1.5G内存,过了一分钟他告诉我们其实能多吃3G,一圈测试跑完发现DX12比Vulkan内存多吃了6G???

总结

五款游戏论API!DirectX和Vulkan差距都有啥?

总结个屁,一同对比下来我想大家应该看的很明白了,微软开发的DirectX在过去一直兢兢业业,DX12的出现也在一定程度上补足了一些原本DX11的弱势。但是需要客观认识到,微软原本承诺的显卡杂交咕咕了、完全基于底层的光线追踪现在也没看见实物,而自身的性能也没有脱离“必须深度优化才好使”的尴尬地步。

相比之下Vulkan的出现就加使得DirectX难堪,毕竟他给的帧数实在是太多了(相对来说A卡对于Vulkan的应用比N卡要好很多,不过目前N卡也在通过驱动不断追赶A卡在Vulkan上面的领先)。

现在市面上支持甚至基于Vulkan制作的游戏越来越多,而且目前Vulkan在游戏中的表现也明显优于DirectX,以后大家如果遇到游戏帧数跑的不好看,又恰好可以使用Vulkan模式的话,一定要试试看哦~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3