diff options
author | Sven Gothel <[email protected]> | 2011-11-06 07:36:35 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-11-06 07:36:35 +0100 |
commit | 0038e2d41825c22bdd18a7b86a8229a3fab674a3 (patch) | |
tree | b36bf1f7a16c234596a8d5abc7ac58b8c5e2d1ba /src/jogl/classes/jogamp/opengl/windows/wgl | |
parent | 7dff8e2e043bb5e7606b041f8d4b4ae7c1579085 (diff) |
JOGL *Drawable swapBufferImpl() cleanup: Don't force swap-buffer off for offscreen/pbuffer, but respect GLDrawableImpl's decision (double-buffer)
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/windows/wgl')
4 files changed, 6 insertions, 17 deletions
diff --git a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java index afa4da2f8..aa5da9f2b 100644 --- a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java +++ b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java @@ -169,11 +169,4 @@ public class WindowsBitmapWGLDrawable extends WindowsWGLDrawable { ((SurfaceChangeable)ns).setSurfaceHandle(0); } } - - protected void swapBuffersImpl() { - if(DEBUG) { - System.err.println("unhandled swapBuffersImpl() called for: "+this); - } - } - } diff --git a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java index 74aa57a94..e34301328 100644 --- a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java +++ b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java @@ -124,12 +124,6 @@ public class WindowsPbufferWGLDrawable extends WindowsWGLDrawable { return floatMode; } - protected void swapBuffersImpl() { - if(DEBUG) { - System.err.println("unhandled swapBuffersImpl() called for: "+this); - } - } - private void createPbuffer() { WindowsWGLGraphicsConfiguration config = (WindowsWGLGraphicsConfiguration) getNativeSurface().getGraphicsConfiguration().getNativeGraphicsConfiguration(); SharedResource sharedResource = ((WindowsWGLDrawableFactory)factory).getOrCreateSharedResource(config.getScreen().getDevice()); diff --git a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java index 4ed9a00c3..fe446e8fe 100644 --- a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java +++ b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java @@ -41,6 +41,7 @@ package jogamp.opengl.windows.wgl; import java.security.AccessController; + import javax.media.nativewindow.NativeSurface; import javax.media.opengl.GLDrawableFactory; import javax.media.opengl.GLException; @@ -74,7 +75,8 @@ public abstract class WindowsWGLDrawable extends GLDrawableImpl { } } - protected void swapBuffersImpl() { + protected final void swapBuffersImpl() { + // single-buffer is already filtered out @ GLDrawableImpl#swapBuffers() long startTime = 0; if (PROFILING) { startTime = System.currentTimeMillis(); diff --git a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java index cd22127a3..2c9d72fb3 100644 --- a/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java +++ b/src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java @@ -442,7 +442,7 @@ public class WindowsWGLDrawableFactory extends GLDrawableFactoryImpl { if(null==sr) { throw new IllegalArgumentException("No shared resource for "+device); } - final List returnList = new ArrayList(); + final List<GLDrawableImpl> returnList = new ArrayList<GLDrawableImpl>(); Runnable r = new Runnable() { public void run() { GLContext lastContext = GLContext.getCurrent(); @@ -451,7 +451,7 @@ public class WindowsWGLDrawableFactory extends GLDrawableFactoryImpl { } sr.context.makeCurrent(); try { - GLDrawableImpl pbufferDrawable = new WindowsPbufferWGLDrawable(WindowsWGLDrawableFactory.this, target, sr); + GLDrawableImpl pbufferDrawable = new WindowsPbufferWGLDrawable(WindowsWGLDrawableFactory.this, target); returnList.add(pbufferDrawable); } finally { sr.context.release(); @@ -462,7 +462,7 @@ public class WindowsWGLDrawableFactory extends GLDrawableFactoryImpl { } }; maybeDoSingleThreadedWorkaround(r); - return (GLDrawableImpl) returnList.get(0); + return returnList.get(0); } /** |