|
Here is the list of OpenGL extensions supported by Forceware 180.42 WinXP 32 drivers for a GeForce GTX 280. |
In comparison to ForceWare 178.24, ForceWare 180.42 introduces 8 new extensions:
- GL_ARB_draw_instanced
- GL_ARB_half_float_vertex
- GL_ARB_framebuffer_object
- GL_ARB_geometry_shader4
- GL_ARB_texture_buffer_object
- GL_ARB_vertex_array_object
- GL_EXT_direct_state_access
- GL_NV_explicit_multisample
Most of these extensions are not really new, they have been just ARB-ed.
GL_EXT_direct_state_access seems interesting because this extension allows to update some OpenGL state like matrices in a more direct way. For example, without this extension, to update the modelview matrix you have to do:
void setModelviewMatrix(const GLfloat matrix[16]) { GLenum savedMatrixMode; glGetIntegerv(GL_MATRIX_MODE, &savedMatrixMode); glMatrixMode(GL_MODELVIEW); glLoadMatrixf(matrix); glMatrixMode(savedMatrixMode); }
Now using GL_EXT_direct_state_access extension, you can do:
void setModelviewMatrix(const GLfloat matrix[16]) { glMatrixLoadfEXT(GL_MODELVIEW, matrix); }
Rather effective!
ForceWare 180.42 has also the OpenGL 3.0 support. If you enable OpenGL 3.0 with NVIDIA OpenGL Emulation tool (see here: ForceWare 177.89 and OpenGL 3.0 Code Sample), the extension WGL_ARB_create_context is added to the extensions list bringing total number to 171.
Graphics card used: EVGA GeForce GTX 280 / 1Gb.
– OpenGL Renderer: GeForce GTX 280/PCI/SSE2
– Vendor: NVIDIA Corporation
– Drivers Version: Forceware 6.14.11.8042 (10-17-2008)
– OpenGL Version: 2.1.2
– GLSL (OpenGL Shading Language) Version: 1.20 NVIDIA via Cg compiler
– ARB Texture Units: 4
– Vertex Shader Texture Units: 32
– Pixel Shader Texture Units: 32
– Geometry Shader Texture Units: 32
– Max Texture Size: 8192×8192
– Max Anisotropic Filtering Value: X16.0
– Max Point Sprite Size: 63.4
– Max Dynamic Lights: 8
– Max Viewport Size: 8192×8192
– Max Vertex Uniform Components: 4096
– Max Fragment Uniform Components: 2048
– Max Geometry Uniform Components: 2048
– Max Varying Float: 60
– Max Vertex Bindable Uniforms: 12
– Max Fragment Bindable Uniforms: 12
– Max Geometry Bindable Uniforms: 12
OpenGL Extensions: 170 extensions
The extensions exposed by the old ForceWare drivers are HERE.
You can use GPU Caps Viewer to retrieve the list of extensions of your graphics card.
- GL_ARB_color_buffer_float
- GL_ARB_depth_texture
- GL_ARB_draw_buffers
- GL_ARB_draw_instanced
- GL_ARB_fragment_program
- GL_ARB_fragment_program_shadow
- GL_ARB_fragment_shader
- GL_ARB_half_float_pixel
- GL_ARB_half_float_vertex
- GL_ARB_framebuffer_object
- GL_ARB_geometry_shader4
- GL_ARB_imaging
- GL_ARB_multisample
- GL_ARB_multitexture
- GL_ARB_occlusion_query
- GL_ARB_pixel_buffer_object
- GL_ARB_point_parameters
- GL_ARB_point_sprite
- GL_ARB_shadow
- GL_ARB_shader_objects
- GL_ARB_shading_language_100
- GL_ARB_texture_border_clamp
- GL_ARB_texture_buffer_object
- GL_ARB_texture_compression
- GL_ARB_texture_cube_map
- GL_ARB_texture_env_add
- GL_ARB_texture_env_combine
- GL_ARB_texture_env_dot3
- GL_ARB_texture_float
- GL_ARB_texture_mirrored_repeat
- GL_ARB_texture_non_power_of_two
- GL_ARB_texture_rectangle
- GL_ARB_transpose_matrix
- GL_ARB_vertex_array_object
- GL_ARB_vertex_buffer_object
- GL_ARB_vertex_program
- GL_ARB_vertex_shader
- 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_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_bindable_uniform
- 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_EXT_framebuffer_object
- GL_EXTX_framebuffer_mixed_formats
- 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_rescale_normal
- GL_EXT_secondary_color
- GL_EXT_separate_specular_color
- 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_sRGB
- GL_EXT_texture_shared_exponent
- GL_EXT_timer_query
- GL_EXT_vertex_array
- GL_IBM_rasterpos_clip
- GL_IBM_texture_mirrored_repeat
- GL_KTX_buffer_region
- GL_NV_blend_square
- GL_NV_copy_depth_to_color
- GL_NV_depth_buffer_float
- GL_NV_conditional_render
- 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_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_pixel_data_range
- GL_NV_point_sprite
- GL_NV_primitive_restart
- GL_NV_register_combiners
- GL_NV_register_combiners2
- GL_NV_texgen_reflection
- GL_NV_texture_compression_vtc
- GL_NV_texture_env_combine4
- GL_NV_texture_expand_normal
- 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_program
- GL_NV_vertex_program1_1
- GL_NV_vertex_program2
- GL_NV_vertex_program2_option
- GL_NV_vertex_program3
- GL_NVX_conditional_render
- 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_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_extensions_string
- WGL_EXT_framebuffer_sRGB
- WGL_EXT_pixel_format_packed_float
- WGL_NV_float_buffer
- WGL_NV_multisample_coverage
- WGL_NV_render_depth_texture
- WGL_NV_render_texture_rectangle
A more detailed description of each extension can be found at the following addresses:
Pingback: The Geeks Of 3D » NVIDIA ForceWare OpenGL 3.0 Support for Windows and Linux
Pingback: Quick Test of ForceWare 180.42 Graphics Drivers | The Geeks Of 3D
Pingback: OpenGL 3.2 Explicit Multisample Demo | The Geeks Of 3D - 3D Tech News