【问题标题】:What exactly is Vulkan or metal or any of these graphics "APIs"?Vulkan 或金属或任何这些图形“API”到底是什么?
【发布时间】:2019-07-26 12:53:21
【问题描述】:

我想了解一下 Vulkan API 到底是什么。它本质上是在与显卡对话的操作系统上运行的服务吗?或者它到底是什么以及它是如何工作的?例如,我不明白为什么会有专门为 Vulkan 编写的显卡驱动程序,Vulkan 只是一个规范,还是它的实现,或者它究竟是如何工作的?

我已经阅读了一些文章,包括维基百科页面,但我不明白图形是如何工作的。

Vulkan 只是驱动程序实施者遵循的标准,还是实际的操作系统服务?

【问题讨论】:

    标签: 3d metal vulkan directx-12


    【解决方案1】:

    因此,您拥有图形硬件(显卡),并且有许多不同的卡具有不同的内部结构。如果您想编写一个 3D 图形应用程序(例如视频游戏),那么您必须确切地知道如何与当前使用的每个图形卡进行通信。显然,这是很多工作,甚至是不可能的,因为许多视频设备的内部工作都是专有的,不向公众开放。

    这就是图形 API 的用武之地。图形 API 为程序​​员提供了一个接口,可以与支持该 API 的所有图形硬件进行通信。例如,您可以使用 DirectX 11 为所有支持它的显卡编写程序。 DirectX 是用于在 MS Windows 和 XBOX 下运行的程序的 API。 Vulkan 也是另一个 API,旨在用于支持它的所有平台,例如 Windows 和 Linux(这些几乎是唯一支持 Vulkan 的操作系统)。

    API 的作用是将您的命令转换为图形驱动程序可以理解的内容,并可以进一步处理安装在您系统上的特定图形卡。

    简而言之,这基本上就是它。您可能想通过搜索图形 API-driver-hardware 层来了解更多信息。

    【讨论】:

    • 所以本质上 Vulkan 只是 AMD 和 Nvidia 遵守的标准?或者它是用 C 或 C++ 编写的代码的实际应用程序?
    • 是的,他们可以通过他们的图形驱动程序支持 Vulkan、DirectX、OpenGL 或任何其他 API。
    • 那么它是一个标准还是一个用代码编写的实际程序?
    • 这是一个标准/规范并且它也是将您的命令转换为图形驱动程序可以理解的代码的代码。这有点像翻译。
    • 太棒了,所以人们将使用 Vulkan 来构建他们的游戏引擎,而图形驱动程序创建者将获取 Vulkan 的输出并在 Gpu 中对其进行处理,对吗?
    猜你喜欢
    • 2012-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    • 2022-11-11
    • 2011-08-27
    • 1970-01-01
    相关资源
    最近更新 更多