要想获得流畅、炫酷的游戏体验,强大的图形 API 必不可少。目前,Microsoft 的 DirectX 和 Khronos Group 的 Vulkan 是两大主流图形 API,它们都致力于优化 CPU 和 GPU 的硬件资源分配,为玩家带来高速渲染和高帧率的游戏体验。
那么,当 Vulkan 与 DirectX 同台竞技时,谁的性能更胜一筹呢?哪一个才是游戏玩家的最佳选择?接下来,我们将深入解析,为你揭晓答案。(剧透一下,答案就是:没有标准答案🥹。)
Vulkan 与 DirectX:发展历程
在深入对比之前,让我们先来回顾一下 DirectX 和 Vulkan 的发展历程,了解它们对游戏领域的重大意义。
DirectX:PC 游戏的起点
在 DirectX 问世之前,游戏开发者主要为 DOS 系统开发游戏。为了拉拢开发者转向 Windows 平台,丰富 Windows PC 的游戏生态,Microsoft 的开发团队决定打造 DirectX。
这场影响至今的游戏领域变革发生在 1995 年 9 月,正好是 Windows 95 发布前夕。当时,游戏市场正在稳步增长。DirectX 1.0 的推出(最初名为 Windows Game SDK),标志着一个新时代即将开启。
DirectX 之所以得名,是因为它的设计初衷就是绕过操作系统,让游戏能够更直接地利用硬件资源,从而实现更流畅的游戏体验。
Alex St John,DirectX 初创团队成员
Alex St John 曾在访谈中表示,Microsoft 在积极推动开发者使用 DirectX,并认真倾听他们的意见。这些反馈后来被用于改进 Windows 上的游戏体验,吸引更多开发者为 Windows 操作系统开发新游戏。
在 DirectX 的初创时期,为了吸引游戏行业的关注,并鼓励他们为 Windows PC 开发游戏,Microsoft 实施了一系列创新的营销策略。
当有了 DirectX,开发者就可以绕过操作系统的限制,充分利用 PC 的硬件性能。DirectSound(负责音频处理)、DirectPlay(处理游戏内通信)和 DirectDraw(图形渲染)共同组成了 DirectX 1.0 的核心(当时也被称为 Game SDK 或 Project Manhattan)。
如今,DirectX 已经发展为一系列 API 的集合,被广泛应用于许多游戏。虽然最新版本是 DirectX 12,但许多游戏仍在使用 DirectX 11。
Vulkan:殊途同归,开放标准
将目光转向 Vulkan,它的起源可以追溯到 AMD 的 Mantle API。Mantle 由 AMD 与 DICE 合作开发,并应用于《狙击精英 3》《战地 4》和《文明:太空》等多款游戏。
为推动技术发展,AMD 将 Mantle API「捐赠」给了 Khronos Group,后者基于此开发了 Vulkan。
Vulkan 声称其性能优于 DirectX 11,尤其在 CPU 瓶颈的情况下能更好地提升性能。虽然优势明显,采用 Mantle 的游戏引擎也越来越多,但它的普及率却没有预期那么高(臣妾做不到啊😭)。
在 2015 年的 GDC(游戏开发者大会)上,Khronos Group 将 Vulkan 作为新图形 API 推出。凭借开放标准的优势,Vulkan 迅速成为业界焦点,并被广泛应用于众多游戏,与 DirectX 11/12 形成竞争。
与 DirectX 相比,Vulkan 的跨平台特性占了起手,它不仅适用于桌面平台,也适用于移动平台。此外,Vulkan 还减少了驱动开销,这一点在 DirectX 12 中也有所改进。
在过去五年中,DirectX 和 Vulkan 都取得了巨大进步,并各有其独特优势。接下来,我们将详细介绍它们的特点,并比较、分析在当前热门游戏中,DirectX 和 Vulkan 的性能表现。
DirectX 与 Vulkan:优势对比
Vulkan 以高效的硬件资源管理而闻名,相较于 DirectX 12,它在 CPU、GPU 和内存的资源调度上更加「平衡」。作为一个更底层的 API,Vulkan 具有开源和跨平台优势,为开发者在多个平台上发布游戏提供了极大便利,节省了宝贵的时间和资源投入。
但是,Vulkan 的复杂性也不容忽视,这可能会增加开发周期,尤其是在与 DirectX 等其他 API 相比较时。
对开发者而言,Vulkan 的开源和跨平台特性极具吸引力。对于刚入门的图形和游戏开发新手,Vulkan 也提供了丰富的学习资源。有些开发者甚至认为 Vulkan 的使用更加简洁明了,文档也比 DirectX 更为优秀。因此,某些游戏同时提供了两种 API 选项,以满足不同玩家的需求。
在现代图形技术领域,Vulkan 和 DirectX 12 都支持最新的光线追踪技术,为玩家带来更加真实的视觉体验。
DirectX 主要应用于 Windows PC 和 Xbox 游戏控制台;而 Vulkan 的平台兼容性更广,支持 Linux、Windows 以及移动平台。例如,搭载 Nvidia Tegra GPU 的 Nintendo Switch 就支持 Vulkan。这种广泛的平台支持让 Vulkan 成为了一个极具潜力的图形 API。
DirectX 与 Vulkan:性能对比
从游戏玩家的角度来看,如果游戏中没有图形 API 选项,就只能使用默认 API 了呗🥲。但如果有得选,DirectX 或 Vulkan 的性能则取决于具体情况。下面我们比较了 DirectX 与 Vulkan 图形 API 的性能,来详细说明这一点。
《荒野大镖客:救赎 2》:DirectX 12 与 Vulkan 比较
在《大表哥 2》中,DirectX 12 和 Vulkan 的性能表现各有千秋:
- Vulkan 在维持最低帧率(FPS)方面表现更为出色,整体帧率波动较小,提供了更加流畅的游戏体验和更高的平均帧率。
- 相比之下,DirectX 12 虽然在某些情况下能够达到更高的峰值帧率,但最低帧率却不尽如人意。
根据测试,Vulkan 在《大表哥 2》中提供了略微更好的游戏体验。然而,一些玩家的反馈并不一致,有人在使用 Vulkan 时遇到了卡顿,而另一些玩家则认为 DirectX 的表现不够稳定。
《流放之路》:DirectX 11、DirectX 12 和 Vulkan 比较
《流放之路》虽然是一款老游戏,但它还一直在更新,而且拥有不少玩家,可以在 DirectX 11、DirectX 12 和 Vulkan 三种图形 API 中进行选择。
对这三种 API 进行测试的结果显示:Vulkan 表现最佳,在大部分游戏场景中,帧率大约能达到 ~80 FPS;在某些特定场景下,DirectX 12 的帧率甚至会掉到 60 FPS 以下,比较拉胯。
DirectX 与 Vulkan:该怎么选择?
在选择游戏使用的图形 API 时,了解 Vulkan 和 DirectX 的关键差异非常重要。为了帮助玩家做出明智的选择,我们做了一个快速对比表格:
特性 | Vulkan | DirectX 12 |
---|---|---|
发布时间 | 2016 年 | 2015 年 |
开发商 | Khronos Group | Microsoft |
帧率 | FPS 略高,但帧率波动更频繁 | 帧率略低,但稳定性更高 |
画质效果 | 在相同图形设置下,差异不明显 | 在相同图形设置下,差异不明显 |
兼容性 | 支持 Windows、Linux、Android、Nintendo 和 macOS 等 | 主要支持 Windows 和 Xbox,其他平台需移植 |
开发难度 | 相对较低 | 相对较高 |
适合游戏类型 | 对 CPU 和 GPU 要求不苛刻游戏 | 对 CPU 和 GPU 要求极高的游戏 |
根据你硬件配置的不同,这两种图形 API 的表现可能会比较随机,而且不同游戏的针对性优化也有很大影响。在选择 DirectX 或 Vulkan 时,只能亲自测试游戏表现,并比较 FPS 数据,没有一个固定公式给你套用。
一般来说:
- DirectX 更加稳定,但有时 Vulkan 反而表现更好(看人品了👀)。
- Vulkan 的各种方面平衡性较好,系统开销也不会太大。
- Vulkan 的底层技术源自 Mantle,AMD GPU 用户使用 Vulkan 可能会有额外的优势。
对于游戏玩家来说,就是哪个 API 效果炸裂就选择哪个。
最新评论
需要管理员权限
直接降级 Windows10 一次性永久解决问题
我按照作者的方法成功了
使用PowerShell修改失败,禁止访问