Few days after the release of OpenGL 4.1 specifications, NVIDIA is the first to release an OpenGL 4.1 graphics driver:
With an OpenGL 4.1 context, this driver exposes 242 OpenGL extensions for a GTX 480 (221 GL extensions and 21 WGL). In comparison to R258.96, R259.09 adds 9 new extensions for dealing with OpenGL 4.1 features:
- GL_ARB_ES2_compatibility
- GL_ARB_get_program_binary
- GL_ARB_robustness
- GL_ARB_separate_shader_objects
- GL_ARB_shader_precision
- GL_ARB_vertex_attrib_64bit
- GL_ARB_viewport_array
- WGL_ARB_create_context_robustness
- WGL_EXT_create_context_es2_profile: not yet documented
- GL_ARB_blend_func_extended
- GL_ARB_color_buffer_float
- GL_ARB_compatibility
- GL_ARB_copy_buffer
- GL_ARB_depth_buffer_float
- GL_ARB_depth_clamp
- GL_ARB_depth_texture
- GL_ARB_draw_buffers
- GL_ARB_draw_buffers_blend
- GL_ARB_draw_indirect
- GL_ARB_draw_elements_base_vertex
- GL_ARB_draw_instanced
- GL_ARB_ES2_compatibility
- GL_ARB_explicit_attrib_location
- GL_ARB_fragment_coord_conventions
- GL_ARB_fragment_program
- GL_ARB_fragment_program_shadow
- GL_ARB_fragment_shader
- GL_ARB_framebuffer_object
- GL_ARB_framebuffer_sRGB
- GL_ARB_geometry_shader4
- GL_ARB_get_program_binary
- GL_ARB_gpu_shader5
- GL_ARB_gpu_shader_fp64
- GL_ARB_half_float_pixel
- GL_ARB_half_float_vertex
- GL_ARB_imaging
- GL_ARB_instanced_arrays
- GL_ARB_map_buffer_range
- GL_ARB_multisample
- GL_ARB_multitexture
- GL_ARB_occlusion_query
- GL_ARB_occlusion_query2
- GL_ARB_pixel_buffer_object
- GL_ARB_point_parameters
- GL_ARB_point_sprite
- GL_ARB_provoking_vertex
- GL_ARB_robustness
- GL_ARB_sample_shading
- GL_ARB_sampler_objects
- GL_ARB_seamless_cube_map
- GL_ARB_separate_shader_objects
- GL_ARB_shader_bit_encoding
- GL_ARB_shader_objects
- GL_ARB_shader_precision
- GL_ARB_shader_subroutine
- GL_ARB_shading_language_100
- GL_ARB_shadow
- GL_ARB_sync
- GL_ARB_tessellation_shader
- GL_ARB_texture_border_clamp
- GL_ARB_texture_buffer_object
- GL_ARB_texture_buffer_object_rgb32
- GL_ARB_texture_compression
- GL_ARB_texture_compression_bptc
- GL_ARB_texture_compression_rgtc
- GL_ARB_texture_cube_map
- GL_ARB_texture_cube_map_array
- GL_ARB_texture_env_add
- GL_ARB_texture_env_combine
- GL_ARB_texture_env_crossbar
- GL_ARB_texture_env_dot3
- GL_ARB_texture_float
- GL_ARB_texture_gather
- GL_ARB_texture_mirrored_repeat
- GL_ARB_texture_multisample
- GL_ARB_texture_non_power_of_two
- GL_ARB_texture_query_lod
- GL_ARB_texture_rectangle
- GL_ARB_texture_rg
- GL_ARB_texture_rgb10_a2ui
- GL_ARB_texture_swizzle
- GL_ARB_timer_query
- GL_ARB_transform_feedback2
- GL_ARB_transform_feedback3
- GL_ARB_transpose_matrix
- GL_ARB_uniform_buffer_object
- GL_ARB_vertex_array_bgra
- GL_ARB_vertex_array_object
- GL_ARB_vertex_attrib_64bit
- GL_ARB_vertex_buffer_object
- GL_ARB_vertex_program
- GL_ARB_vertex_shader
- GL_ARB_vertex_type_2_10_10_10_rev
- GL_ARB_viewport_array
- GL_ARB_window_pos
- GL_ATI_draw_buffers
- GL_ATI_texture_float
- GL_ATI_texture_mirror_once
- GL_S3_s3tc
- GL_EXT_texture_env_add
- GL_EXT_abgr
- GL_EXT_bgra
- GL_EXT_bindable_uniform
- GL_EXT_blend_color
- GL_EXT_blend_equation_separate
- GL_EXT_blend_func_separate
- GL_EXT_blend_minmax
- GL_EXT_blend_subtract
- GL_EXT_compiled_vertex_array
- GL_EXT_Cg_shader
- GL_EXT_depth_bounds_test
- GL_EXT_direct_state_access
- GL_EXT_draw_buffers2
- GL_EXT_draw_instanced
- GL_EXT_draw_range_elements
- GL_EXT_fog_coord
- GL_EXT_framebuffer_blit
- GL_EXT_framebuffer_multisample
- GL_EXTX_framebuffer_mixed_formats
- GL_EXT_framebuffer_object
- GL_EXT_framebuffer_sRGB
- GL_EXT_geometry_shader4
- GL_EXT_gpu_program_parameters
- GL_EXT_gpu_shader4
- GL_EXT_multi_draw_arrays
- GL_EXT_packed_depth_stencil
- GL_EXT_packed_float
- GL_EXT_packed_pixels
- GL_EXT_pixel_buffer_object
- GL_EXT_point_parameters
- GL_EXT_provoking_vertex
- GL_EXT_rescale_normal
- GL_EXT_secondary_color
- GL_EXT_separate_shader_objects
- GL_EXT_separate_specular_color
- GL_EXT_shader_image_load_store
- GL_EXT_shadow_funcs
- GL_EXT_stencil_two_side
- GL_EXT_stencil_wrap
- GL_EXT_texture3D
- GL_EXT_texture_array
- GL_EXT_texture_buffer_object
- GL_EXT_texture_compression_latc
- GL_EXT_texture_compression_rgtc
- GL_EXT_texture_compression_s3tc
- GL_EXT_texture_cube_map
- GL_EXT_texture_edge_clamp
- GL_EXT_texture_env_combine
- GL_EXT_texture_env_dot3
- GL_EXT_texture_filter_anisotropic
- GL_EXT_texture_integer
- GL_EXT_texture_lod
- GL_EXT_texture_lod_bias
- GL_EXT_texture_mirror_clamp
- GL_EXT_texture_object
- GL_EXT_texture_shared_exponent
- GL_EXT_texture_sRGB
- GL_EXT_texture_swizzle
- GL_EXT_timer_query
- GL_EXT_transform_feedback2
- GL_EXT_vertex_array
- GL_EXT_vertex_array_bgra
- GL_EXT_vertex_attrib_64bit
- GL_IBM_rasterpos_clip
- GL_IBM_texture_mirrored_repeat
- GL_KTX_buffer_region
- GL_NV_blend_square
- GL_NV_conditional_render
- GL_NV_copy_depth_to_color
- GL_NV_copy_image
- GL_NV_depth_buffer_float
- GL_NV_depth_clamp
- GL_NV_explicit_multisample
- GL_NV_fence
- GL_NV_float_buffer
- GL_NV_fog_distance
- GL_NV_fragment_program
- GL_NV_fragment_program_option
- GL_NV_fragment_program2
- GL_NV_framebuffer_multisample_coverage
- GL_NV_geometry_shader4
- GL_NV_gpu_program4
- GL_NV_gpu_program4_1
- GL_NV_gpu_program5
- GL_NV_gpu_program_fp64
- GL_NV_gpu_shader5
- GL_NV_half_float
- GL_NV_light_max_exponent
- GL_NV_multisample_coverage
- GL_NV_multisample_filter_hint
- GL_NV_occlusion_query
- GL_NV_packed_depth_stencil
- GL_NV_parameter_buffer_object
- GL_NV_parameter_buffer_object2
- GL_NV_pixel_data_range
- GL_NV_point_sprite
- GL_NV_primitive_restart
- GL_NV_register_combiners
- GL_NV_register_combiners2
- GL_NV_shader_buffer_load
- GL_NV_texgen_reflection
- GL_NV_texture_barrier
- GL_NV_texture_compression_vtc
- GL_NV_texture_env_combine4
- GL_NV_texture_expand_normal
- GL_NV_texture_multisample
- GL_NV_texture_rectangle
- GL_NV_texture_shader
- GL_NV_texture_shader2
- GL_NV_texture_shader3
- GL_NV_transform_feedback
- GL_NV_transform_feedback2
- GL_NV_vertex_array_range
- GL_NV_vertex_array_range2
- GL_NV_vertex_attrib_integer_64bit
- GL_NV_vertex_buffer_unified_memory
- GL_NV_vertex_program
- GL_NV_vertex_program1_1
- GL_NV_vertex_program2
- GL_NV_vertex_program2_option
- GL_NV_vertex_program3
- GL_NVX_conditional_render
- GL_NVX_gpu_memory_info
- GL_SGIS_generate_mipmap
- GL_SGIS_texture_lod
- GL_SGIX_depth_texture
- GL_SGIX_shadow
- GL_SUN_slice_accum
- GL_WIN_swap_hint
- WGL_EXT_swap_control
- WGL_ARB_buffer_region
- WGL_ARB_create_context
- WGL_ARB_create_context_profile
- WGL_ARB_create_context_robustness
- WGL_ARB_extensions_string
- WGL_ARB_make_current_read
- WGL_ARB_multisample
- WGL_ARB_pbuffer
- WGL_ARB_pixel_format
- WGL_ARB_pixel_format_float
- WGL_ARB_render_texture
- WGL_ATI_pixel_format_float
- WGL_EXT_create_context_es2_profile
- WGL_EXT_extensions_string
- WGL_EXT_framebuffer_sRGB
- WGL_EXT_pixel_format_packed_float
- WGL_NVX_DX_interop
- WGL_NV_float_buffer
- WGL_NV_multisample_coverage
- WGL_NV_render_depth_texture
- WGL_NV_render_texture_rectangle
I’m updating GPU Caps Viewer with OpenGL 4.1 support. I quickly tested if GL_ARB_get_program_binary is exposed with an OpenGL 2.1 context and the answer is yes. More on this very soon. The new version of GPU Caps should be available today.
More information about NVIDIA OpenGL 4.1 driver can be found HERE.
The complete list of OpenGL extensions exposed by R259.09 for the GTX 480:
More details about these extensions can be found HERE.
Geeks3D’s OpenGL extensions database can be found HERE.
Pingback: Intel Publishes Three Direct3D 11 Demos with Source Code - 3D Tech News, Pixel Hacking, Data Visualization and 3D Programming - Geeks3D.com
Pingback: [Test] OpenGL 4 Tessellation With Displacement Mapping - 3D Tech News, Pixel Hacking, Data Visualization and 3D Programming - Geeks3D.com