-
OGL用例经早前GPU硬件厂商自己独立驱动DRI控制GPU硬件;
-
OGL用例经后来的gallium框架控制GPU硬件;
-
Vulkan用例经GPU硬件厂商自己独立vulkan驱动控制GPU硬件;
-
OGL用例经gallium框架中的Zink,将OGL操作转换为等效的Vulkan操作;
其它:
-
OGL和Vulkan是对等存在,同位GPU硬件对外的图形与计算API;OGL历史较早,从2.*->4.6,Vulkan后出现目前从1.0->1.3;
两者均由Khnous组织发布维护,Vulkan诞生用意是提供比OGL更佳的性能;
-
zink是由collabora开发维护的开源项目,目前正在持续维护中;
-
gallium是一个框架,用与兼容支持不同厂商对OGL的驱动支持;DRI和vulkan是特定的某厂商的一种特定的对OGL/vulkan的驱动支持;
gallium是多个DRI的集合发展产物,单gallium针对的是OGL,vulkan驱动目前无法直接嵌入gallium框架中;
-
Mesa也是一个框架,提供了OpenGL的多个实现(驱动程序),其中大多数都是硬件加速驱动程序,但Mesa也提供了软件驱动程序;
DRI,Gallium都是mesa中一部分;
-
当前vulkan用例从头到尾通过GPU硬件实现,只能通过各GPU硬件厂商的vulkan驱动;
-
KHR和EXT都是对Vulkan API的扩展,KHR扩展通常是由Khronos Group维护的,能获得比较多的厂商支持;EXT通常针对的是一些不太常见的用例,或者更具实验性的东西