aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* newt: added expose/paint event notification needed for passive rendering. ↵trembovetski2009-08-144-1/+177
| | | | Currently only implemented on Windows.
* NativeWindow: Add destroy() method, allowing external module to dispose a ↵Sven Gothel2009-08-103-0/+22
| | | | NativeWindow instance
* Fix Offscreen/PBuffer [WGL/GLX]: No XVisual/PFD necessary here ..Sven Gothel2009-08-063-13/+18
|
* Update GlueGen to 7dc9c5601d5689dcbc003ca51cfe826942ea3e6b (latest)Sven Gothel2009-08-055-31/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | - Fixes for OpenGL 3.2 - More strict define/function checking - Better documentation in source code: extension relation - GL extension marker exclusion is done by GlueGen now - Adapted gluegen cfg files Added OpenGL 3.2 extensions for GL3 Revalidation of all OpenGL 2.0/3.0/3.1 and 3.2 extensions GL2GL3 based on OpenGL 2.0/3.0 headers EGL shares common egl-common.cfg file Removed experimental java system property 'jogl.GLContext.3_2', try a 3.2 context in case of GL3. X11GLXContext: - Always try to make a created context current, to verify it's usability. This is different than under WGL. - Temporary removed usage: GLX.GLX_CONTEXT_PROFILE_MASK_ARB NV driver bug.
* WGL 3.2: No need for 'jogl.GLContext.3_2' - just works.Sven Gothel2009-08-032-35/+22
|
* Doc: OpenGL 3.1 .. 3.2 profile clarificationSven Gothel2009-08-033-50/+108
| | | | | | | | | | | | GLX_ARB_create_context: Add 3.2 context WGL_ARB_create_context: Add 3.2 context Add: Trying to use 3.2 core profile creation for GL3, disabled by default. (Disabled per default due to a freezing JVM on Linux _after_ the Java main thread and Hotspot finishes.) Experimental: You may try '3.2 core profile creation' setting the java system property 'jogl.GLContext.3_2'.
* Fix GLX/WGL GraphicsConfigurationFactory: Be more relaxed in error handling ↵Sven Gothel2009-08-022-8/+34
| | | | - keep going, even if underlying impl/modules cannot choose a config. Allows VBOX to run NEWT/JOGL
* Fix doc bug @arg -> @paramSven Gothel2009-08-027-25/+25
|
* Update documentation (OpenGL 3.0, 3.1 specifics); Fix ↵Sven Gothel2009-08-021-9/+6
| | | | ExtensionAvailabilityCache: Add Version 2.1 in case of GL2/OpenGL 3.0
* Update OpenGL GL2 profile subsumed/promoted extensions. Base is 3.0, ignore ↵Sven Gothel2009-08-021-5/+4
| | | | the colission-free subsumed extensions.
* Oops: Accidently removed AWT Display selection in NEWTSven Gothel2009-08-011-0/+2
|
* Fix: updateGLProcAddressTable() call order - child before parent, broke WGLSven Gothel2009-08-014-4/+4
|
* Cleanup GLSL ShaderUtil/Code; Add dumpCodeSven Gothel2009-08-013-62/+124
|
* GL3 Related:Sven Gothel2009-08-0110-44/+395
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix glGetStringi's return type to String - Fix ExtensionAvailabilityCache: GL3's glGetStringi for GL_EXTENSIONS Ensure to add GL_VERSION_2_0 in case version >= 3.0 Ensure to not exceed version 3.0 for non GL3.1 context. In case of GL 3.1, do not include GL_VERSIONS below 3.0, since this is a forward compatible context. - Add Prologue to glGetString, where the ExtensionCache is being used for GL_EXTENSIONS - if already initialized. This feature adds backward compatibility for GL3 context on GL_EXTENSION. +++ General: Add GLPipelineFactory, a convenient pipeline factory for Debug/Trace and custom ones .. Change 'void setGL(GL)' to 'GL setGL(GL)', and let it return the successful set GL, or null.
* Fix: GL2ES1 mapping to GL2ES12 if availableSven Gothel2009-07-311-3/+3
|
* Gluegen:Sven Gothel2009-07-318-107/+187
| | | | | | | | | | | | | | | | | | | | | | | | - Fix array element type name and const qualifier JOGL: - GL3: Set ArgumentIsString for GL3.1 methods - JAR file creation: Add 'filesonly' option - GLU: Static check of available impl., better fallback for GL2 without GLUgl2. - WGL: (Performance + Java2D/GL FBO works again) - Refactor WGL_ARB_pixel_format's HDC -> GLCapabilities: HDC2Caps - Revert change where we always create a dummy drawable/context for WGL selection (HDC2Caps). In case of no multisampling, use PFD2Caps only. - Update config using HDC2Caps (WGL_ARB_pixel_format) after context creation, if not done already -> updateCapabilitiesByWGL(). - profile.jogl: Add debug jars
* Fix SwapInterval (return value, check ctx current, egl), add getSwapInterval.sg2158892009-07-308-36/+60
|
* Fix: Check if windowHandle is already createdsg2158892009-07-303-20/+26
|
* Cleanup: Remove NativeWindowFactory.TYPE_BROADCOM_EGLsg2158892009-07-301-5/+0
|
* BroadcomEGL: No relase-ctx, no destroy-ctx - FIXMEsg2158892009-07-291-4/+5
|
* eglBindAPI optionalsg2158892009-07-291-2/+9
|
* Add BroadcomEGL verbose messagessg2158892009-07-292-6/+21
|
* Fix: doxygen-all-pub.cfg; Add NativeWindow: surfaceSwap() and ↵sg2158892009-07-2919-64/+135
| | | | surfaceUpdated(); BroadcomEGL: Use custom surfaceSwap(); GLDrawableImpl's: Utilize NativeWindow's surfaceSwap() and surfaceUpdated(); Fix common enum of GL2ES1 and GL2GL3, merge them in GL
* Fixed GL* documentation. Moved common GL functions to GLBase. Moved ↵sg2158892009-07-294-24/+174
| | | | glAllocateMemoryNV to GL2GL3 only. Add GL2GL3 interface. Fix some GL2 signatures. BroadcomEGL disable custom setSize().
* Refine debug messagesg2158892009-07-292-2/+9
|
* NEWT: Remove loading of non-existing nativewindow lib; BroadcomEGL: use ↵sg2158892009-07-283-5/+10
| | | | libEGL(EglUtil) and libGLES_CM(nexus), setSize to screen-size on creation, more debug output
* Use getNativeWindowType(custom=true) for factory selection; Don't fail is ↵sg2158892009-07-284-8/+12
| | | | non native OS factory is available
* Cleanup ..sg2158892009-07-287-46/+15
|
* Fix BroadcomEGL: Proper EGLGraphicsConfiguration at creation timesg2158892009-07-282-6/+11
|
* EGL changes for deviceMorris Meyer2009-07-288-13/+54
|
* Add Custom NativeWindow Type 'BroadcomEGL' ↵sg2158892009-07-2712-46/+438
| | | | (-Dnativewindow.ws.name=BroadcomEGL): 1st Draft of supporting broadcom's proprietary EGL mapping
* mips changesMorris Meyer2009-07-274-2/+93
|
* NEWT: Adding KD if building with OpenGL. Fixing build in case no native ↵sg2158892009-07-241-12/+16
| | | | library is being build. Fixing KD build for non windows.
* Add: Extended support for CVM crosscompile:sg2158892009-07-2433-702/+852
| | | | | | | | | | | | | | | | | | | - Clean up X11 dependency - NativeWindow: - Seperate X11 out of core. - Add nativewindow.x11.jar and nativewindow.x11.cdc.jar - Newt: - Seperate X11,win,osx out of core. - Add newt.x11.jar, newt.win.jar, newt.osx.jar and the CDC variants Fix: External Context & Drawable (X11 and Windows) - Properly fetch current context values (ctx, display, drawable, ..) - Create GraphicsConfiguration based on the given pixelformat/FBConfig Fix: Java2D OpenGL Usage - Using the external context as shared for the external drawable - JAWTUtil: Skip locking in case of OGL-Flush-Queue - TODO: Windows FBO still does not work .. (X11 is fine)
* Using commont JAWTUtil for final lockingsg2158892009-07-201-5/+5
|
* Add: Extended support for CVM:sg2158892009-07-1211-35/+96
| | | | | | | | | | | | | | | | | | | | | | | | - GLX, CGL, WGL - GL2ES12 desktop ES1 and ES2 common profile Cleanup JAR file seperation - New: jogl.cdcfp.jar (ALL for CVM/CDC) - New: setup.nogl2es12 (Allow GL2ES12 for CVM without gl2/gl3) - Clean dependencies of GLX, WGL, CGL (incl. for GL2ES12) - Only build supported JAR archive, ie if they are being build Fix GL2ES12: Only add impl. for ES1 and ES2 interface methods - Use new com.sun.gluegen.runtime.PointerBuffer, to support CVM - CVM and J2SE Java JAR archives are equal! - Well, the build form *everything* includes some empty directories in the cdcfp JAR archives though. - Removed last AWT dependency in MacOSX chain - GLDrawableFactory - com.sun.opengl.impl.macosx.cgl.MacOSXCGLDrawableFactory - com.sun.opengl.impl.macosx.cgl.awt.MacOSXAWTCGLDrawableFactory
* Fix jnlp macosx ; Ignore jawt lib loading errorSven Gothel2009-07-041-1/+8
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2022 232f8b59-042b-4e1e-8c03-345bb8c30851
* Push custom loadLibrary handling down to NativeWindow NativeLibLoaderBase; ↵Sven Gothel2009-07-045-188/+101
| | | | | | X11AWTGLXGraphicsConfigurationFactory: Encapsule whole block in lock/unlock to minimize context switch git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2021 232f8b59-042b-4e1e-8c03-345bb8c30851
* Local property access package-private (no qualifiers)Sven Gothel2009-07-043-12/+12
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2020 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix property query. Thx to Ken pointing this out.Sven Gothel2009-07-0315-79/+188
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2018 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix property handling ; Adding jnlp. aliasing for propertiesSven Gothel2009-07-0318-92/+95
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2016 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Fixed: JOGL Cg Dependencies ..Sven Gothel2009-07-011-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Cg classes reside in jogl.cg.jar - Restrict native Cg library dependency only to the jogl cg library, which is loaded from the CgGL class only. - Tested Cg demos with and w/o Cg installation, tested regular GL demos with and w/o Cg installation. (Linux & MacOSX) - jogl/etc/profile.jogl - Changed invocation: $0 <JOGL-PROFILE> [jogl-build-dir] - Autodetects if used from within a autobuild directory - Added it to the autobuild zip file - Fixed: NativeWindow X11GraphicsScreen, adding missing Toolkit locks - Set RI to true ! git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2009 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Removed useless GLX synchronized hacks in X11GLXGraphicsConfigurationSven Gothel2009-06-182-21/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Multithreading / Locking .. It turns out that there exist platforms with a buggy thread safe OpenGL/GLX/.. implementation. E.g. Linux x86_64, NV 185.18.14 where 1/6 attempts of the test case java -Djava.awt.headless=true demos.es2.RedSquare -GL2 -GL2 -GL2 -GL2 will result in: C [libGL.so.1+0x5c08a] glXGetFBConfigAttrib+0x40a [error occurred during error reporting (printing native stack), id 0xb] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j com.sun.opengl.impl.x11.glx.GLX.glXGetFBConfigAttrib1(JJILjava/lang/Object;I)I+0 j com.sun.opengl.impl.x11.glx.GLX.glXGetFBConfigAttrib(JJI[II)I+67 j com.sun.opengl.impl.x11.glx.X11GLXGraphicsConfiguration.glXGetFBConfig(JJI[II)I+24 In these cases, you can set the system property nativewindow.locking=true to always use the generic reentrance capable LockingNativeWindowFactory implementation as a last resort. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1992 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fix NEWT static singleton initSven Gothel2009-06-184-36/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1991 232f8b59-042b-4e1e-8c03-345bb8c30851
* Refactored static initialization to let the JVM ensure it only runsKenneth Russel2009-06-181-9/+3
| | | | | | | | once; don't remember the JVM static initialization rules which probably define why it was getting called twice git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1989 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Fix: X11 locking Sven Gothel2009-06-1816-218/+331
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current thread default display or the given display is being used, hence it is no more required to use a ToolkitLock for X11 without AWT. Removed X11 ToolkitLock in case of X11 without AWT, which is being detected with the absence of the classes java.awt.Component _AND_ javax.media.nativewindow.awt.AWTGraphicsDevice or with the system property java.awt.headless=true Only in the Java2D/Swing case, one 'leaking' Display is created within canCreateGLPbuffer(). - Workaround for Hotsport bugs #4395095, #6852404 4395095 JNI access to java.nio DirectBuffer constructor/accessor 6852404 Race condition in JNI Direct Buffer access and creation routines - Added build.xml -Dbuild.noarchives=true property to skip the time consuming creation of zip archives. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1988 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixes for javadoc targetsKenneth Russel2009-06-181-0/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1982 232f8b59-042b-4e1e-8c03-345bb8c30851
* Corrected non-C syntax. Worked around ancient compiler/OS onKenneth Russel2009-06-171-26/+49
| | | | | | | Solaris/SPARC nightly build machines. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1978 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Fix: Native X11 Display deadlock (Linux x86_64 32bit on 64bit)Sven Gothel2009-06-175-174/+87
| | | | | | | | | | | | | | | | | | | It turns out that under some circumstances, e.g. >3 threads within initialization time, the static X11Display usage result in a native deadlock within glXQueryServerString(). The call never returned. May be This happend even with NativeWindowFactory.getDefaultFactory().getToolkitLock().lock(); Removed X11Util.getStaticDefaultDisplay() This allows us to remove the ToolkitLock around these segments, due to a thread local X11Display utilization. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1977 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Add: GLProfile.get(name) return default if name=="GL" as well (or if null)Sven Gothel2009-06-1727-933/+1547
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add: NEWT pumpMessages/dispatchMessages - Handled by the Display implementation for all windows - Windows .. OK - MacOSX .. OK - X11 .. OK - Added Atom Property handling to attach java window object to window - Removed the eventMask for dispatching messages, since dispatching is for all windows now. (Wasn't impl. for all platforms anyways) - All init static code will funnel in the Display.initSingletion(), to ensure a proper init order for all platforms. - Display creation is unique for (name,thread). Handling a TLS mapping of display-names to Displays. - GLWindow: autoSwapBufferMode and eventHandlerMode are static members - Tested with experimental tagged GLWindow.setRunPumpMessages()/runCurrentThreadPumpMessage(), 1 thread - 4 windows, etc .. java demos.es2.RedSquare -1thread -onepump -GL2 -GL2 -GL2 -GL2 No benefit .. However .. the implementation is more correct now, due to the display/current-thread message pumping. - Fix: Window.sendMouseEvent() bounds check - Fix: MacWindow has proper nsView locking now, local to the window instance. locked in lockSurface besides general window manipulation. - Fix: JAWT utilized JAWTUtil.init() to init libraries - NativeLibLoaderBase.loadNativeWindow("awt") call was missing. (Visible on MacOSX + AWT) - Fix: GLXUtil proper locking - Fix: X11Util proper locking git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1976 232f8b59-042b-4e1e-8c03-345bb8c30851