Nvidia OpenGL 3.0 Beta Driver for Windows XP

December 16, 2008
178.25_geforce_winxp_32bit_developerbeta.exe
118.0 MB
Windows XP
14,432
This driver is aimed at developers to start coding to the new OpenGL 3.0 and GLSL 1.30 features. These features are not enabled by default. They can be enabled using the nvemulate utility, as described here: http://developer.nvidia.com/object/nvemulate.html. You do not need to do anything on Linux drivers to enable OpenGL 3.0.

You need one of the following graphics cards to enable the OpenGL 3.0 and GLSL 1.30 functionality:

Desktop

Quadro FX 370, 570, 1700, 3700, 4600, 4700x2, 5600
GeForce 8000 series or higher; GeForce GTX 260, 280

Notebook

Quadro FX 360M, 370M, 570M, 770M, 1600M, 1700M, 2700M, 3600M, 3700M
GeForce 8000 series or higher

This driver implements all of GLSL 1.30 and all of OpenGL 3.0, except for the following functionality:

* One-channel (RED) and two-channel (RG) textures
* The Clearbuffer API
* Windowless rendering support (We suggest you use GPU affinity instead)
* Forward-compatible context
* Debug Context

This driver exposes the following new extensions:

OpenGL 2.1 extensions:
ARB_vertex_array_object
ARB_framebuffer_object
ARB_half_float_vertex
OpenGL 3.0 extensions:
WGL_create_context
GLX_create_context
ARB_draw_instanced
ARB_geometry_shader4
ARB_texture_buffer_object

The following has been added over the previous Windows beta driver release (177.89):

* Linux support - OpenGL 3.0 and GLSL 1.30 functionality support between the Linux and Windows releases are identical.
* Now allows rendering to a FBO with mixed-size attachments
* VAO bug fixes and performance improvements
* EXT_texture_swizzle support
* Transform feedback missing functionality is implemented
* Various other bug fixes

The OpenGL 3.0 and GLSL 1.30 specifications can be downloaded here: http://www.opengl.org/registry/

For any bugs or issues, please file a bug through the developer website: https://nvdeveloper.nvidia.com/

OpenGL 3.0 on NVIDIA hardware FAQ

1) How do I start using OpenGL 3.0 in my code base?

In order to use OpenGL 3.0 and later versions, any application explicitly has to "opt in" to use these versions. There is a new context creation call CreateContextAttribsARB (for WGL and GLX defined in the WGL/GLX_ARB_create_context extensions) that you have to use in order to request a context that supports OpenGL 3.0, or a later version. If you do not use this new call, but stick to the existing WGL/GLX create context calls, you will get OpenGL 2.1. Thus existing behavior is not changing.
2) I hear about deprecation and removing functionality from OpenGL. What is going on?

Together with OpenGL 3.0, the OpenGL ARB introduced a deprecation and profile mechanism. Deprecation means that a feature is marked for removal from a future version of the OpenGL spec. It is not actually removed yet from OpenGL 3.0, but this means that future versions of OpenGL will likely remove some features. Several features are marked as deprecated in the OpenGL 3.0 specification (but none are removed). Furthermore, the OpenGL ARB is providing a mechanism for encapsulating a set of functionality that can be supported by hardware vendors that want to address a particular market. That mechanism can be a profile or an ARB approved extension, which is still to be decided.

You can find more on the new features, deprecation and profiles in these NVISION08 Presentations:

* OpenGL & the Future
* OpenGL on NVIDIA
Specifically, slide 23 shows an overview of all extensions that were folded into core OpenGL 3.0.

The OpenGL 3.0 specification and GLSL 1.30 specifications can be downloaded from the OpenGL registry.
3) Will existing applications still work on current and future shipping hardware?

NVIDIA has no plans for dropping support for OpenGL 2.1, and earlier versions, on our existing and future shipping hardware. As a result, all currently shipping applications will continue to work on NVIDIA's existing and future hardware.
4) What NVIDIA hardware will support OpenGL 3.0?

NVIDIA is implementing OpenGL 3.0 for Windows and Linux, and will ship a full release shortly. Beta drivers are currently available for download. The new features in OpenGL 3.0 require G80, or newer hardware. Thus OpenGL 3.0 is not supported on NV3x, NV4x nor G7x hardware. This means you need one of the following NVIDIA graphics accelerators to use OpenGL 3.0:

Desktop
Quadro FX 370, 570, 1700, 3700, 4600, 4700x2, 5600
GeForce 8000 series or higher; GeForce GTX 260, 280
Notebook
Quadro FX 360M, 370M, 570M, 770M, 1600M, 1700M, 2700M, 3600M, 3700M
GeForce 8000 series or higher

6) Is NVIDIA going to remove functionality from OpenGL in the future?

NVIDIA has no interest in removing any feature from OpenGL that our ISVs rely on. NVIDIA believes that developers are not served with a forced re-write of a large part of their code base, which will be needed if some features are removed from a future version of OpenGL. NVIDIA believes in providing maximum functionality with minimal churn to developers. Hence NVIDIA will take full advantage of the mechanism described in question #2 to keep supporting all functionality, including functionality on the deprecated list in OpenGL 3.0, for all future OpenGL versions. If, for example, OpenGL 3.1 will actually remove the features on the deprecated list, developers will be able to keep using those features on NVIDIA hardware using one of the mechanisms described in question #2.
7) Will functionality marked as deprecated be slow on NVIDIA hardware?

No. NVIDIA understands that features on the deprecated list are critical to the business of a large part of our customer base. NIVIDIA will provide full performance, and will support, tune, and fix any issues, for any feature on the deprecated list.
Alternative drivers to Nvidia OpenGL 3.0 Beta Driver for Windows XP: