The Jenkins Controller is preparing for shutdown. No new builds can be started.
Commit
72a84b422327c6abb688339419d3552ec0e5c70c
by Sven Gothel EGLGraphicsDevice adds desctruction callback and nativeDisplayID; EGLDisplayUtil adds creation of EGLGraphicsDevice. Due to EGL's location in JOGL, supporting destruction of an EGLGraphicsDevice is solved (hack) temporary by passing an eglTerminate callback to it's ctor. Using EGLGraphicsDevice's close() method to also issue eglTerminate() simplifies the code. In future we shall move EGL to nativewindow! The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/AbstractGraphicsDevice.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/KDDisplay.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/broadcom/egl/Display.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/AndroidDisplay.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilitiesImmutable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilities.java (diff)
Commit
20bf031db719f7baa4c6e74734fc999061e08fe2
by Sven Gothel Bug 599 - FBObject / Offscreen Support - Part 1 - New FBObject implementation handling FBO and it's attachments *** API CHANGE: Util -> Core *** while it's size and sample-count can be reconfigured on the fly. - com.jogamp.opengl.util.FBObject -> com.jogamp.opengl.FBObject - agnostic to texture unit - separate attachments using OO hierarchy reflecting FBO - handling MSAA and blitting - no FBO destruction for reconfig (attach/detach) - New GLFBODrawableImpl impl. an FBObject based GLDrawable - Instantiated by a dummy native surface (onscreen and invisible) hooked up to a dummy GLDrawable, which is the delegation for context creation. - Utilizies ProxySurface.UpstreamSurfaceHook for dummy surface avoiding specialization for native platforms. - TODO: Allow to utilize common surface interface as a dummy-surface to supporting API seperation of windowing/GL. The latter allows impl. of createGLDrawable(NativeSurface) with FBO. - New OffscreenAutoDrawable (extends GLAutoDrawableDelegate) for all offscreen drawables. Shall replace GLPbuffer. - New GLCapabilities*.isFBO() / setFBO(boolean) to request FBO offscreen, similar to isPBuffer(). Rule: if both are requested, FBO shall be favored. - GLContext adds raw FBO availability query (min. FBO avail), FBObject contains fine grained queries (TODO: Move parts to GLContext for efficiency). - Add framebuffer tracking, allowing fast querying: - GLBase/GLContext: public int getBoundFramebuffer(int target); public int getDefaultDrawFramebuffer(); public int getDefaultReadFramebuffer(); - GLContextImpl public final void setBoundFramebuffer(int target, int framebufferName) .. called by GL impl bind framebuffer - GL: getDefaultDrawFramebuffer(), getDefaultReadFramebuffer() Adding default framebuffer queries being issued by GL.glBindFramebuffer(target, 0) w/ a default framebuffer, o.e. zero. This allows a transparent use of a custom FBO even in case the applications attempts to reset FBO to zero. Value flow: GL <- GLContext <- GLDrawable, - GLCapabilities handle fbo/pbuffer seperate, don't disable the other - GLContext/GL track read/write framebuffer to be queried by FBObject to determine whether to bind/unbind a framebuffer - Test cases for multiple FBO w/ and w/o MSAA Other Features: - New interface ProxySurface.UpstreamSurfaceHook, allowing to hook an upstream surface of unknown type providing lifecycle and information (size, ..) callbacks. Used for all new dummy NativeSurface impl and SWT GLCanvas. - GLContext -> GLDrawable propagation context/drawable lifecycle via ProxySurface.UpstreamSurfaceHook allowing dynamic resources to react (create, init, ..) - contextRealized() - contextMadeCurrent() - SurfaceChangeable -> MutableSurface currently only contains setting the surface handle. TODO: May need to move ProxySurface.UpstreamSurfaceHook -> MutableSurface.UpstreamSurfaceHook, allowing other impl. classes (NEWT OffscreenWindow) to utilize the new upstream hookup mechanism - will allow FBO/Dummy window to work. - SWT GLCanvas using ProxySurface.UpstreamSurfaceHook for proper size propagation. - New GLAutoDrawable::getUpstreamWidget(), allowing GLEventListener to fetch the owning Java side UI element (NEWT, SWT, AWT, ..). - GLDrawableFactory: Removed createOffscreenSurface() - unused and not GL related - EGLDrawableFactory handles device/profile avail. mapping while actually creating context/drawable. This allows us to learn whether the ES context is software/hardware as well as FBO avail. - EGLDrawable: Removed secret buckets of EGL configs :) Employ native surface (X11, WGL, ..) to EGL 'mapping' in EGLDrawableFactory utilizing new EGLUpstreamSurfaceHook (implements ProxySurface.UpstreamSurfaceHook). Other Bugs: - Add CTX_OPTION_DEBUG to ctx/extension cache key since only a debug ctx may expose the ARB debug capability. This bug caused lack of ARB/AMD debug functionality. - Fix GLProfile deadlock (debug mode, w/ EGL/ES, no X11), dump availability information _after_ lock. - ImmModeSink draw(): Use GL's glDrawElements(..), don't cast for GL2ES1. Fixes use for GL2ES2. - Fix KeyEvent.getKeyChar() comment (-> only stable for keyTyped(..)) Misc: - Refined alot of API doc - New GLExtensions holds commonly used GL extension strings, allows better referencing and usage lookup. - Move GL (interface) decl. to GLBase - GLBuffers: Cleanup API doc (format, types) - TextureIO: Add PAM and PPM static suffix identifier - GLCapabilities getNumSamples() returns 0 if sampleBuffers is disabled, this seems to be more natural. - finalized a lot The file was modified src/test/com/jogamp/opengl/test/junit/jogl/offscreen/Surface2File.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles2.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/MultisampleDemoES2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXDrawable.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/offscreen/ReadBufferBase.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestPNGTextureFromFileAWT.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java (diff) The file was modified make/scripts/java-win32.bat (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface.m (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/Gears.java (diff) The file was modified make/config/jogl/gl-if-CustomJavaCode-gl.java (diff) The file was modified make/scripts/java-win32-dbg.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestGLSLShaderState01NEWT.java (diff) The file was modified doc/TODO.txt (diff) The file was modified src/jogl/classes/javax/media/opengl/GLBase.java (diff) The file was modified src/jogl/classes/jogamp/opengl/util/av/EGLMediaPlayerImpl.java (diff) The file was modified make/config/jogl/gl-common.cfg (diff) The file was modified make/scripts/java-win64.bat (diff) The file was added src/jogl/classes/com/jogamp/opengl/FBObject.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLGraphicsConfigurationUtil.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBODrawableNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLProfile01NEWT.java (diff) The file was modified etc/test_dbg.bat (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestPNGTextureFromFileNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java (diff) The file was added src/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was removed src/nativewindow/classes/javax/media/nativewindow/SurfaceChangeable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/mgl_default_xxx.vp (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXExternalCGLContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/TextureSequenceCubeES2.java (diff) The file was added src/nativewindow/classes/javax/media/nativewindow/MutableSurface.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java (diff) The file was modified etc/test.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES1AWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestGLSLShaderState02NEWT.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/MD.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/BuildStaticGLInfo.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified src/newt/native/NewtMacWindow.m (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsScreen.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestFBOMRTNEWT01.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/MultisampleDemoES1.java (diff) The file was modified .gitignore (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLContext.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/DefaultGraphicsDevice.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite01AWT.java (diff) The file was modified make/scripts/tests-x32.bat (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java (diff) The file was modified src/newt/classes/com/jogamp/newt/Window.java (diff) The file was added src/jogl/classes/com/jogamp/opengl/GLExtensions.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/GLConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfiguration.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/mgl_default_xxx.fp (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/GLReadBufferUtil.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/ProxySurface.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLProcAddressResolver.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02AWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawable.java (diff) The file was removed src/jogl/classes/jogamp/opengl/x11/glx/X11DummyGLXDrawable.java (diff) The file was modified src/newt/classes/jogamp/newt/OffscreenWindow.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java (diff) The file was modified src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PES2.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGearsGLJPanelAWTBug450.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/GearsES1.java (diff) The file was modified make/scripts/tests-x64.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLOnscreenDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-desktop.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified make/stub_includes/opengl/macosx-window-system.h (diff) The file was added src/jogl/classes/jogamp/opengl/egl/EGLUpstreamSurfaceHook.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilities.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfiguration.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface-pbuffer.m (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownCompleteNEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was removed src/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOMix2DemosES2NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES1NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES2NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/WrappedSurface.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXContext.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite01NEWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilitiesImmutable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXDrawable.java (diff) The file was added src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLNameResolver.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfigurationFactory.java (diff) The file was modified doc/Platform.GLES.txt (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXDrawable.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/SurfaceUpdatedHelper.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGLJPanelAWTBug450.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was added src/jogl/classes/com/jogamp/opengl/OffscreenAutoDrawable.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/TextureSequence.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfigurationFactory.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/FBOMix2DemosES2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextDrawableSwitchNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles1.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDebugMessageHandler.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/DefaultGLCapabilitiesChooser.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff) The file was modified src/newt/classes/com/jogamp/newt/event/KeyEvent.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLPbufferDrawable.java (diff) The file was modified src/nativewindow/native/macosx/OSXmisc.m (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/texture02_xxx.fp (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java (diff) The file was modified make/scripts/java-win64-dbg.bat (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLContext.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOMRTNEWT01.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/util/UITestCase.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/spi/NetPbmTextureWriter.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/AbstractGraphicsDevice.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/GLEmitter.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-common.java (diff) The file was removed src/jogl/classes/com/jogamp/opengl/util/FBObject.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/caps/MultisampleDemoES1.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/JoglVersion.java (diff) The file was removed src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLExtensionNames.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff)