转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2001

在SIGGRAPH 2012上,Khronos发布了OpenGL 4.3的spec,其中最主要的更新就是增加了compute shader!这里有spec的链接:

扩展的更新列表包括:

  • GL_ARB_arrays_of_arrays:允许在GLSL中使用多维数组,比如float f[4][3]。
  • GL_ARB_ES3_compatibility:提供了EAC和ETC2纹理压缩格式。
  • GL_ARB_clear_buffer_object:用一个常量来清除buffer object。
  • GL_ARB_compute_shader:引入了一个新的shader stage,类似于D3D11的compute shader。
  • GL_ARB_copy_image:在纹理和渲染缓冲区之间直接拷贝像素。
  • GL_ARB_debug_group
  • GL_ARB_debug_label
  • GL_ARB_debug_output2
  • GL_ARB_debug_output
  • GL_ARB_explicit_uniform_location
  • GL_ARB_fragment_layer_viewport
  • GL_ARB_framebuffer_no_attachments
  • GL_ARB_internalformat_query2
  • GL_ARB_invalidate_subdata
  • GL_ARB_multi_draw_indirect
  • GL_ARB_program_interface_query
  • GL_ARB_robust_buffer_access_behavior
  • GL_ARB_shader_image_size
  • GL_ARB_shader_storage_buffer_object
  • GL_ARB_stencil_texturing
  • GL_ARB_texture_buffer_range
  • GL_ARB_texture_query_levels
  • GL_ARB_texture_storage_multisample
  • GL_ARB_texture_view
  • GL_ARB_vertex_attrib_binding
  • GL_KHR_debug
  • GL_KHR_texture_compression_astc_ldr
从更新上看,OpenGL 4.3提供了很多用户期盼已久的功能,比如array_of_arrays、copy_image等。同时,它在功能上略微超过了D3D 11.1,比如stencil_texturing、texture_buffer_range、新的纹理压缩等。不过重要的DSA仍然遥遥无期。