NVIDIA OpenGL Extensions

This document describes the OpenGL extensions supported by the NVIDIA OpenGL drivers.  As you can see, its not yet complete, but I plan to update it as soon as I find time.

Download a header file with the enumerants and prototypes for these extensions - glext.h
 

  • GL_ARB_multitexture [spec is part of OpenGL 1.2.1 spec] [example]
  • GL_EXT_abgr [spec]
  • GL_EXT_bgra
  • GL_EXT_clip_volume_hint [spec]
  • GL_EXT_compiled_vertex_array [spec]
  • GL_EXT_cull_vertex [spec]
  • GL_EXT_packed_pixels
  • GL_EXT_point_parameters [spec]
  • GL_EXT_stencil_wrap
  • GL_EXT_texture_env_add [spec]
  • GL_EXT_texture_env_combine [spec]
  • GL_EXT_texture_cube_map [spec] 
  • GL_EXT_texture_object [spec]
  • GL_EXT_vertex_array [spec]
  • GL_EXT_vertex_weighting [spec] 
  • GL_KTX_buffer_region
  • GL_SGIS_multitexture
  • GL_NV_texgen_reflection [spec]
  • GL_NV_texture_env_combine4 [spec]
  • GL_WIN_swap_hint

  •  

    GL_ARB_multitexture

    Allows multiple textures to be applied in a single pass.  Commonly used by games (e.g. Quake) to apply lightmaps to surface textures.  Other applications include emboss bump mapping, reflection mapping and fog.  Here is a quick tutorial I wrote for GDC '99.

    GL_EXT_abgr

    Allows pixel and texture data to be supplied in ABGR or BGR component order.  This is supported largly as a convenience for legacy IRIS GL applications which used this component order.

    GL_EXT_bgra

    Allows pixel and texture data to be supplied in BGRA or BGR component order.  This is supported for compatibility with Microsoft's software implementation, and because this is a common byte order on Windows.  OpenGL 1.2 includes this extension as part of the core.

    GL_EXT_texture_env_add

    Introduces a new texture environment ADD function for additive texture mapping.

    GL_EXT_texture_env_combine

    Adds flexibility to the texenv block.  See the summary in the spec for details.  Useful for shading affects, particularly when combined with multitexture.

    GL_EXT_texture_object

    Texture objects allow an application to store multiple textures in the hardware and rapidly switch between them.  This supercedes the original practice of storing textures inside display lists.  Provided for backward compatibility.  The equivalent functionality exists in OpenGL 1.1.

    GL_EXT_vertex_array

    Vertex arrays allow specification of a list of vertices and associated data without the overhead of per-vertex function calls.  Provided for backward compatibility.  The equivalent functionality exists in OpenGL 1.1.

    GL_KTX_buffer_region

    This "private" extension is used by 3D Studio Max only, and is not intended for general use.

    GL_NV_texgen_reflection

    Automatic texture coordinate generation for textured lighting and environment mapping.

    GL_NV_texture_env_combine4

    Builds on GL_EXT_texture_env_combine to allow even greater flexibility.  See the summary in the spec for details.  Useful for shading affects, particularly when combined with multitexture.

    GL_SGIS_multitexture

    This extension is provided for compatibility with older versions of Quake2 only, and should not be used for development.  Use GL_ARB_multitexture instead.  This extension will be removed from future drivers, as all Quake2 engine licensees are changing over to GL_ARB_multitexture.


    Copyright (c) 1999, Michael I. Gold
    Last updated July 1, 1999