From 4f936be964c9e8613a5e43e1d88490ff7f550ec9 Mon Sep 17 00:00:00 2001 From: Kenneth Russel Date: Tue, 8 Jul 2003 09:20:04 +0000 Subject: Added sharing of display lists and textures among OpenGL contexts through new methods in GLDrawableFactory; GLContext has not been exposed in the public API. Tested with new simple TestContextSharing demonstration on Windows, Linux and Mac OS X. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@18 232f8b59-042b-4e1e-8c03-345bb8c30851 --- src/net/java/games/jogl/GLCanvas.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'src/net/java/games/jogl/GLCanvas.java') diff --git a/src/net/java/games/jogl/GLCanvas.java b/src/net/java/games/jogl/GLCanvas.java index adee0315d..474dd238d 100644 --- a/src/net/java/games/jogl/GLCanvas.java +++ b/src/net/java/games/jogl/GLCanvas.java @@ -65,14 +65,21 @@ public final class GLCanvas extends Canvas implements GLDrawable { // This workaround makes things quite a bit slower private static final boolean isOSX = System.getProperty("os.name").equals("Mac OS X"); - GLCanvas(GLCapabilities capabilities, GLCapabilitiesChooser chooser) { + GLCanvas(GLCapabilities capabilities, + GLCapabilitiesChooser chooser, + GLDrawable shareWith) { super(); - context = GLContextFactory.getFactory().createGLContext(this, capabilities, chooser); + context = GLContextFactory.getFactory().createGLContext(this, capabilities, chooser, + GLContextHelper.getContext(shareWith)); } - GLCanvas(GraphicsConfiguration config, GLCapabilities capabilities, GLCapabilitiesChooser chooser) { + GLCanvas(GraphicsConfiguration config, + GLCapabilities capabilities, + GLCapabilitiesChooser chooser, + GLDrawable shareWith) { super(config); - context = GLContextFactory.getFactory().createGLContext(this, capabilities, chooser); + context = GLContextFactory.getFactory().createGLContext(this, capabilities, chooser, + GLContextHelper.getContext(shareWith)); } public void display() { @@ -171,6 +178,10 @@ public final class GLCanvas extends Canvas implements GLDrawable { return new GLPbufferImpl(context.createPbufferContext(capabilities, initialWidth, initialHeight)); } + GLContext getContext() { + return context; + } + //---------------------------------------------------------------------- // Internals only below this point // -- cgit v1.2.3