作為圖形行業的兩大API,DirectX、OpenGL一直上演著相愛相殺,當然現在我們又有了Metal、Vulkan等后起之秀,前輩們的壓力自然也更大。時隔整整三年,Khronos Group標準組織終于將OpenGL標準規范從4.5版升級到了4.6版——版本號變化不大,但新東西還是很多的。
OpenGL 4.6的最大變化就是支持SPIR-V,一種用于GPU通用計算和圖形學的中間語言,Khronos開發設計,最初是為OpenCL規范準備的,和下一代圖形標準Vulkan差不多同時提出,也在不斷發展完善。
OpenGL 4.6標準將SPIR-V著色器整合在了核心規范中,可以確保得到廣泛的支持。
同時,新標準還增加了大量的ARB、EXT擴展,包括GL_ARB_gl_spirv、GL_ARB_indirect_parameters、GL_ARB_pipeline_statistics_query、GL_ARB_texture_filter_anisotropic、GL_ARB_polygon_offset_clamp、GL_ARB_shader_atomic_counter_ops、GL_KHR_no_error、GL_KHR_parallel_shader_compile、WGL_ARB_create_context_no_error、GXL_ARB_create_context_no_error。
這些擴展由Khronos、AMD、Intel、NVIDIA聯合創建,會得到各家顯卡的普遍支持。
此外,OpenGL標準一如既往地開放,OpenGL、OpenGL ES都新增了不少可以與DirectD、Vulkan合作、互通的擴展,包括GL_EXT_memory_object、GL_EXT_memory_object_fd、GL_EXT_memory_object_win32、GL_EXT_semaphore、GL_EXT_semaphore_fd、GL_EXT_semaphore_win32、GL_EXT_win32_keyed_mutex。
OpenGL 4.6規范官方下載