I am sponsoring this case for John Martin and have marked it closed approved automatic as it is a simple update of an externally controlled interface to match the new standard version from a recognized standards body. If anyone disagrees and wishes to have this case converted to a fasttrack for further review, please let me know.
-Alan Coopersmith- alan.coopersmith at sun.com Sun Microsystems, Inc. - X Window System Engineering Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: OpenGL 3.1 for the NVIDIA graphics driver 1.2. Name of Document Author/Supplier: Author: John Martin 1.3 Date of This Document: 28 April, 2009 4. Technical Description This project is the delivery of OpenGL 3.1 and GLSL 1.40 support in the NVIDIA graphics driver. This is an update to OpenGL 3.0 and GLSL 1.30 [LSARC/2009/066] delivered in the R180 driver. The scope of the project is specific to NVIDIA as OpenGL 3.x introduces a new deprecation model where the intent to remove old features in future releases is declared. The commitments to interface stability for this project may not apply to OpenGL 3.x implementations from other vendors. Each of those should be treated as a separate project. The Khronos group (http://www.khronos.org) announced the OpenGL 3.1 and GLSL 1.40 update on 24 March, 2009. Details of this announcement are at: http://www.khronos.org/news/press/releases/khronos-releases-streamlined-opengl-3.1-specification As was the practice with earlier versions, the fixed pipeline and shading language specifications are split into separate documents. At the time of this writing the current documents are: OpenGL 3.1 Specification with deprecated features removed http://www.opengl.org/registry/doc/glspec31.20090324.pdf OpenGL 3.1 Specification with ARB compatibility for deprecated features http://www.opengl.org/registry/doc/glspec31undep.20090324.pdf OpenGL 1.40 Shading Language http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.40.05.pdf New features: ------------- The delivery of OpenGL 3.1 features is transparent to existing applications that depend on OpenGL 2.1 and earlier behavior. To use the OpenGL 3.1 (and 3.0) features, the application must register intent by using the new context creation call, glXCreateContextAttribsAttribsARB(). If the application uses the established context creation call, glXCreateContext(), it will get OpenGL 2.1 and earlier behavior. Existing applications are shielded from any changes in behavior. To provide optional support of deprecated features, OpenGL 3.1 adds the ARB_compatibility extension. This is discussed further in the deprecation section. Appendix G.1 of the 3.1 Specification lists the new features. Deprecation of old features: ---------------------------- As mentioned in LSARC/2009/066, OpenGL 3.0 introduced a deprecation model. The OpenGL 3.1 specification removed features which were marked as deprecated in OpenGL 3.0. However, OpenGL 3.1 adds an optional extension, ARB_compatibility, which provides a better method to determine if the driver still supports deprecated features. The drivers delivered by the project will implement ARB_compatibility. Appendix G.2 of the 3.1 Specification lists the deprecated features. (There are no additional deprecated features in 3.1). Support: -------- Bugtraq: nvidia/nvidia/opengl Delivery: --------- The interfaces listed below are delivered by the NVDAgraphics SYSV package and the NVDAgraphics IPS package, in conjunction with the ogl-select SMF service [LSARC/2005/700]. There are no name changes to the headers or libraries for OpenGL 3.1 so existing build environments are not effected. Interfaces Exported Interface Classification Comments ----------------------------------------------------------------- /usr/include/GL/gl.h Committed /usr/include/GL/glext.h Committed /usr/include/GL/glx.h Committed /usr/include/GL/glxext.h Committed /usr/lib/libGL.so.1 Committed /usr/lib/amd64/libGL.so.1 Committed The libraries /usr/lib[/amd64]/libGLcore.so.1 are private objects and should not be linked in for normal application development. 6. Resources and Schedule 6.4. Steering Committee requested information 6.4.1. Consolidation C-team Name: X Consolidation (Desktop C-Team) 6.5. ARC review type: Automatic 6.6. ARC Exposure: open