summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2009-08-02 04:30:53 -0700
committerSven Gothel <[email protected]>2009-08-02 04:30:53 -0700
commit91e2508661f8f922afad6379e8bcadee37900546 (patch)
tree294b74c8246101b32f70aa4c32d991305cd01e3e
parent97c28763a19a2b2a55486f9908c763ceb2e60775 (diff)
Update documentation (OpenGL 3.0, 3.1 specifics); Fix ExtensionAvailabilityCache: Add Version 2.1 in case of GL2/OpenGL 3.0
-rw-r--r--make/config/jogl/gl-common.cfg13
-rw-r--r--make/doc/jogl/spec-overview.html9
-rw-r--r--src/jogl/classes/com/sun/opengl/impl/ExtensionAvailabilityCache.java15
3 files changed, 24 insertions, 13 deletions
diff --git a/make/config/jogl/gl-common.cfg b/make/config/jogl/gl-common.cfg
index 3e38aa0da..7cf51fda5 100644
--- a/make/config/jogl/gl-common.cfg
+++ b/make/config/jogl/gl-common.cfg
@@ -585,7 +585,8 @@ ClassJavadoc GL2ES2 */
ClassJavadoc GL2GL3 /**
ClassJavadoc GL2GL3 * <P>
-ClassJavadoc GL2GL3 * Interface containing the common subset of GL3 and GL2.<br>
+ClassJavadoc GL2GL3 * Interface containing the common subset of GL3 (OpenGL 3.1+) and GL2 (OpenGL 3.0),
+ClassJavadoc GL2GL3 * also known as the OpenGL 3.0 forward compatible, non deprecated subset.<br>
ClassJavadoc GL2GL3 * This interface reflects only the programmable shader functionality of desktop OpenGL<br>
ClassJavadoc GL2GL3 * </P>
ClassJavadoc GL2GL3 */
@@ -596,15 +597,21 @@ ClassJavadoc GL2 * This interface contains all core desktop OpenGL methods thro
ClassJavadoc GL2 * version 3.0, inclusive, as well as most of it's extensions defined at the
ClassJavadoc GL2 * time of this specification. Early OpenGL extensions whose functionality
ClassJavadoc GL2 * was incorporated into core OpenGL by version 3.0, inclusive, are specifically
-ClassJavadoc GL2 * excluded.
+ClassJavadoc GL2 * excluded.<br>
+ClassJavadoc GL2 * Note: OpenGL 3.0 is the last subsumed version in the specification.
+ClassJavadoc GL2 * You need to use a {@link GL3} OpenGL 3.1+ context to benefit
+ClassJavadoc GL2 * from new functionality and versions.
ClassJavadoc GL2 * </P>
ClassJavadoc GL2 */
ClassJavadoc GL3 /**
ClassJavadoc GL3 * <P>
ClassJavadoc GL3 * This interface contains all core desktop OpenGL methods starting from 3.1,
-ClassJavadoc GL3 * inclusive - forward compatible only, as well as most of it's extensions defined at the
+ClassJavadoc GL3 * inclusive - forward compatible, as well as most of it's extensions defined at the
ClassJavadoc GL3 * time of this specification.<br>
+ClassJavadoc GL3 * Note: OpenGL 3.0 forward compatible, non deprecated functionality is included in the
+ClassJavadoc GL3 * 3.1 specification, hence the {@link GL2GL3} implemented interface.<br>
+ClassJavadoc GL3 * Note: OpenGL 3.1 (forward compatible) no more includes fixed point functionality.
ClassJavadoc GL3 * </P>
ClassJavadoc GL3 */
diff --git a/make/doc/jogl/spec-overview.html b/make/doc/jogl/spec-overview.html
index f79e5ff23..6557e9f7a 100644
--- a/make/doc/jogl/spec-overview.html
+++ b/make/doc/jogl/spec-overview.html
@@ -55,6 +55,9 @@ version 3.0, inclusive, as well as most of it's extensions defined at the
time of this specification. Early OpenGL extensions whose functionality
was incorporated into core OpenGL by version 3.0, inclusive, are specifically
excluded.<br>
+ Note: OpenGL 3.0 is the last subsumed version in the specification.
+ You need to use a {@link javax.media.opengl.GL3} OpenGL 3.1+ context to benefit
+ from new functionality and versions.<br>
Future extensions will be added with a <a href="#maintenanceupdates">maintenance update</a></li><br>
<li> {@link javax.media.opengl.GL3 javax.media.opengl.GL3} interface<br>
@@ -62,6 +65,9 @@ excluded.<br>
This interface contains all core desktop OpenGL methods starting from 3.1,
inclusive - forward compatible only, as well as most of it's extensions defined at the
time of this specification. <br>
+ Note: OpenGL 3.0 forward compatible, non deprecated functionality is included in the
+ 3.1 specification, hence the {@link javax.media.opengl.GL2GL3} implemented interface.<br>
+ Note: OpenGL 3.1 (forward compatible) no more includes fixed point functionality.<br>
Future extensions will be added with a <a href="#maintenanceupdates">maintenance update</a></li><br>
<li> {@link javax.media.opengl.GLES1 javax.media.opengl.GLES1} interface<br>
@@ -105,7 +111,8 @@ time of this specification. <br>
<li> {@link javax.media.opengl.GL2GL3 javax.media.opengl.GL2GL3} interface<br>
<br>
- Interface containing the common subset of GL3 and GL2.<br>
+ Interface containing the common subset of GL3 (OpenGL 3.1+) and GL2 (OpenGL 2.0),
+ also known as the OpenGL 3.0 forward compatible, non deprecated subset.<br>
This interface reflects only the programmable shader functionality of desktop OpenGL</li><br>
</ul>
</li><br>
diff --git a/src/jogl/classes/com/sun/opengl/impl/ExtensionAvailabilityCache.java b/src/jogl/classes/com/sun/opengl/impl/ExtensionAvailabilityCache.java
index 7931f791b..26072519e 100644
--- a/src/jogl/classes/com/sun/opengl/impl/ExtensionAvailabilityCache.java
+++ b/src/jogl/classes/com/sun/opengl/impl/ExtensionAvailabilityCache.java
@@ -212,19 +212,16 @@ public final class ExtensionAvailabilityCache {
}
switch (major) {
- case 2:
- if(gl.isGL3() && major==2) {
+ case 3:
+ if(gl.isGL3()) {
// GL3 is a GL 3.1 forward compatible context,
// hence no 2.0, 1.0 - 1.5 GL versions are supported.
major=0;
- } else {
- // make sure 2.0 is added ..
- minor = 0;
- availableExtensionCache.add("GL_VERSION_" + major + "_" + minor);
- if (DEBUG) {
- System.err.println("ExtensionAvailabilityCache: Added GL_VERSION_" + major + "_" + minor + " to known extensions");
- }
}
+ // Restart loop at version 2.1
+ minor = 1;
+ break;
+ case 2:
// Restart loop at version 1.5
minor = 5;
break;