我想解释一下Vulkan API到底是什么。它本质上是在与图形卡对话的操作系统上运行的服务吗?或者它到底是什么?它是如何工作的?例如,我不明白为什么会有专门为Vulkan编写的图形卡驱动程序,Vulkan只是一个规范,还是某种东西的实现,或者它是如何工作的?
我已经阅读了几篇文章,包括Wikipedia页面,但我不了解图形的工作原理。
Vulkan仅仅是驱动程序实现者遵循的标准,还是做某事的实际操作系统服务?
答案 0 :(得分:1)
因此,您具有图形硬件(图形卡),并且有许多具有不同内部结构的不同卡。如果您想编写3D图形应用程序(例如,视频游戏),则必须确切地知道如何与当前使用的每个图形卡通信。显然,这是很多工作,甚至是不可能的,因为许多视频设备的内部工作是专有的,并且不向公众公开。
这就是图形API的用武之地。图形API为程序员提供了与支持该API的所有图形硬件进行对话的接口。例如,您可以为所有支持DirectX 11的图形卡使用DirectX 11编写程序。 DirectX是用于在MS Windows和XBOX下运行的程序的API。 Vulkan也是另一个API,该API旨在用于所有支持该平台的平台,例如Windows和Linux(而这些几乎是唯一支持Vulkan的操作系统)。
API的作用是将您的命令转换为图形驱动程序可以理解的内容,并可以进一步处理系统上安装的特定图形卡。
基本上就是这样。您可能想通过搜索图形API驱动程序硬件层来阅读更多内容。