diff options
author | Kenneth Russel <[email protected]> | 2005-11-13 06:42:16 +0000 |
---|---|---|
committer | Kenneth Russel <[email protected]> | 2005-11-13 06:42:16 +0000 |
commit | 21329712dd03066ede7b9f7dd5975f11bcd9ccac (patch) | |
tree | c9b91b4ef8f1cc3ff65a7ebb1681919da708e2bd | |
parent | 0f6b7600e0b236cd5d42750ebd1421dcf76ca1ae (diff) |
Added workaround for problem on Mac OS X 10.4.3 where could not share
textures and display lists between a pbuffer and an on-screen OpenGL
context; now specify pbuffer support for all created contexts. Tested
on 10.3.9 and 10.4.3. See 4129317 on Apple's Bug Reporter for first
report of this bug. Added workaround for older OpenGL version strings
being reported with older graphics cards on OS X; now attempt to parse
vendor-specific version string. Added workaround for
ProceduralTexturePhysics demo on OS X where pbuffer's rendering
results were not being flushed each frame; this demo is now working
properly on 10.4.3 with recent hardware.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@148 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4
-rw-r--r-- | src/demos/proceduralTexturePhysics/Water.java | 3 | ||||
-rw-r--r-- | src/demos/vertexProgRefract/VertexProgRefract.java | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/demos/proceduralTexturePhysics/Water.java b/src/demos/proceduralTexturePhysics/Water.java index 701a10f..4bf8f14 100644 --- a/src/demos/proceduralTexturePhysics/Water.java +++ b/src/demos/proceduralTexturePhysics/Water.java @@ -453,6 +453,9 @@ public class Water { singleStep = false; } + // Force rendering to pbuffer to complete + gl.glFlush(); + if (slow && (slowDelay > 0) ) { try { Thread.sleep(slowDelay); diff --git a/src/demos/vertexProgRefract/VertexProgRefract.java b/src/demos/vertexProgRefract/VertexProgRefract.java index 8663d39..a01a5d7 100644 --- a/src/demos/vertexProgRefract/VertexProgRefract.java +++ b/src/demos/vertexProgRefract/VertexProgRefract.java @@ -453,8 +453,10 @@ public class VertexProgRefract extends Demo { // Internals only below this point // public void shutdownDemo() { - ManipManager.getManipManager().unregisterWindow(drawable); - drawable.removeGLEventListener(this); + if (drawable != null) { + ManipManager.getManipManager().unregisterWindow(drawable); + drawable.removeGLEventListener(this); + } super.shutdownDemo(); } |