aboutsummaryrefslogtreecommitdiffstats
path: root/make/scripts
Commit message (Collapse)AuthorAgeFilesLines
* NEWT AWT Driver: Remove flashing (clear background @ update/paint method) ; ↵Sven Gothel2012-09-071-2/+2
| | | | Proper canvas size and direct events.
* Cleanup shutdown mechanism ; Fix X11/ATI SIGV at shutdown ; EGLDisplayUtil: ↵Sven Gothel2012-09-072-10/+6
| | | | | | | | | | | | | | | | | | Check for leaked display handles GLProfile / all shutdown methods: Remove ShutdownType to remove complexity (not required) Proper shutdown sequence: GLProfile - GLDrawableFactory+ - GLContext - NativeWindowFactory - [X11Util, OSXUtil, ..] GLDrawableFactory: Always keep shutdown-hook alive, required for X11Util shutdown (@ JVMShutdown only) X11Util: Shutdown - @ JVMShutdown only - If GL vendor ATI: close pending X11 display connections in proper order of creation. This finally removes the SIGV when shutting down the JVM on X11 w/ ATI driver. EGLDisplayUtil: Add shutdown, allowing to validate whether leaked EGL display handles remain.
* Windows scripts: bump to 1.6.0_35Sven Gothel2012-09-077-16/+16
|
* Fix Capabilities ambiguity and explosion of queried available-list; Add FBO ↵Sven Gothel2012-09-072-14/+40
| | | | | | | | | | | | | | | | | | | | | availability detection for EGL, WGL and OSX. Introducing Capabilities 'bitmap' boolean, complementing the offscreen modes FBO and PBuffer. This allows: 1 - deterministic setting of the offscreen mode 2 - utilizing auto configuration of offscreen mode, if !onscreen !FBO !PBuffer and !Bitmap 3 - adding 'availability' semantic of 'onscreen' boolean, i.e. if onscree:=1 for a queried instance, the offscreen modes still indicate offscreen availability - see [4] 4 - avoiding explosion of the availability list due to [3], one Capability entry reflect on- and offscreen settings. Add FBO availability detection for EGL, WGL and OSX. Tested manually w/ 'TestGLCapabilities01NEWT' on X11 [NV, ATI], WGL[NV], OSX[NV].
* NEWT Windows.closeNativeImpl(): Remove 'GDI.SetParent(windowHandleClose, 0)' ↵Sven Gothel2012-08-193-5/+10
| | | | for NewtCanvasSWT workaround - not required anymore
* NEWT Platform Driver: Uniform impl. class names [DisplayDriver, ↵Sven Gothel2012-08-181-2/+2
| | | | ScreenDriver, WindowDriver] to reduce complexity and programatic selection.
* Fix GLCanvas's JAWTWindow reference ; Add ES2 test in TestAWT01GLn ; Ubuntu ↵Sven Gothel2012-08-182-4/+2
| | | | | | | | | | | | | | | 12.04/Pandaboard(Omap4, PowerVR SGX 540) 103/108 tests passed (before freeze) of 124 total Fix GLCanvas's JAWTWindow reference - drawable.getNativeSurface() may not be a JAWTWindow due to our EGL WrappedSurface. Hence store the created JAWTWindow reference locally. Add ES2 test in TestAWT01GLn - test EGL/ES2 w/ AWT GLCanvas Ubuntu 12.04/Pandaboard(Omap4, PowerVR SGX 540): 103/108 tests passed (before freeze) of 124 total - machine freezes around test 108 .. - new passed unit test high for ES2 incl. AWT tests
* GLDrawableFactory.createGLDrawable() offscreen: Fix caps - set double-buffer ↵Sven Gothel2012-08-173-5/+8
| | | | | | := false to be consistent w/ GLDrawableFactory.createOffscreenDrawable() TestGLDrawable01NEWT: Enhance test case to run w/ EGLDrawableFactory (ES2) besides GL2 and GLX/WGL/..-Factory
* Robostness FBObject / GLReadBufferUtil: Ignore pre-existing GL errors - ↵Sven Gothel2012-08-171-0/+1
| | | | | | | | | | | remove GL error checking in FBObject bind/unbind. - User GL code caused errors shall not fail impl. - FBObject bind/unbind GL error checking is almost useless due to it's simple code, would only catch user GL code errors, which should be ignored here. - MultisampleDemoES2: Only enable GL_MULTISAMPLE if available, i.e. validate passed multisample flag
* Fix EGLDrawableFactory.getEGLSurface(..): Catch WrappedSurface case w/ ↵Sven Gothel2012-08-172-5/+6
| | | | | | | | | | | | | | | | | EGLDevice and EGLGraphicsConfiguration - Regression of 43a473b2005d7f59a7f4f5b8bc7ca9ae88b4e894 Do not create a WrappedSurface around a given WrappedSurface if the latter is intended for EGL, i.e. uses EGLDevice and EGLGraphicsConfiguration even though the surface handle is not valid [yet]. For this case we assume the WrappedSurface has a lifecycle hook as it is used for the dummy drawable. Otherwise we would have a recursive WrappedSurface, ie with EGLDrawableFactory.createOnscreenDrawableImpl( dummySurface ), where dummySurface is a WrappedSurface w/ EGL pbuffer drawable lifecycle hook. Commit 43a473b2005d7f59a7f4f5b8bc7ca9ae88b4e894 didn't take the above case into account.
* Adapt to GlueGen ARM Build Changes 422d7a5eb53fca6642ebf4e8910d8b0311bb2597Sven Gothel2012-08-1619-57/+245
| | | | | Note: Patch set not clean since build*xml files contain 'NEWT Broadcom' driver changes of upcoming commit due to pervious uncommitted work. Will be fixed w/ next commit.
* Merge remote-tracking branch 'github-sgothel/master' into armv6hfXerxes Rånby2012-08-067-47/+82
|\
| * Fix X11 Display Connection leak w/ new GLAutoDrawableBase code when used w/ ↵v2.0-rc10Sven Gothel2012-08-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | offscreen drawables, reported by Mark Raynsford New common GLAutoDrawableBase missed to close the AbstractGraphicsDevice in case it has been created and dedicated for the passed GLDrawable. This detailed knowledge is only known to the creator, hence it is passed in the constructor and is being passed through all specializations. Further more the new X11/GLX impl. of GLDrawableFactory's 'createMutableSurfaceImpl' always creates it's own private X11 display connection to avoid locking / threading issues. Since the old implementation reused the shared display connection which is prone to threading issues, this bug was not visible before. Also fixed the unit test TestNEWTCloseX11DisplayBug565, now correctly validating that no display connection is left over after a new cycle of create/destroy of onscreen and offscreen drawables.
| * SWT Update: SWT GLCanvas creates lazy when resource is ready; Create new ↵Sven Gothel2012-07-253-18/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NewtCanvasSWT allowing to parent NEWT windows natively. SWT GLCanvas creates lazy when resource is ready - Ensures drawable and context are created when size > zero and native visualID is valid. The latter is platform dependent. - Note that you cannot utilize custom GLCapabilities w/ this one, since the configurations is already realized - use NewtCanvasSWT. Create new NewtCanvasSWT allowing to parent NEWT windows natively: - Similar to NewtCanvasAWT - Allows attaching / detaching NEWT windows NewtCanvasAWT: Public setNEWTChild(..) fixed Added test cases for the above - tested on Linux, OSX and Windows w/ SWT Note: As usual for OSX, add -XstartOnFirstThread Details: - NEWT Display has new method: 'EDTUtil setEDTUtil(EDTUtil)' allowing to set a custom event dispatch utility. We use this to set our SWTEDTUtil for using NEWT w/ SWT complying w/ SWT threading constraints.
| * Fix TestSWTAccessor02GLn regression .. forgot to: ↵Sven Gothel2012-07-201-2/+2
| | | | | | | | canvas.addControlListener(swtUpstreamHook);
| * Fix OSX OffscreenLayerSurface (OLS) regressions (pbuffer based)Sven Gothel2012-07-201-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | - Use pbuffer (still), don't set FBO (invisible) - OLS (only impl is JAWTWindow now) stores the attached layer handle created and attached by the GLContext implementation, so 'others' may detach it -> NewtCanvasAWT - NewtCanvasAWT.removeNotify() needs to ask the OLS to detach the layer since it's parent will be gone. - MacOSXCGLContext destroy allows a removed OLS (see above)
| * tests.sh minor editSven Gothel2012-07-201-7/+8
| |
| * Bug 599 - FBObject / Offscreen Support - Part 1Sven Gothel2012-07-197-29/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | Use armv6 optimization for armhf to stay compatible with the new Raspberry ↵Xerxes Rånby2012-08-062-1/+28
|/ | | | Pi Raspbian distribution.
* Fix commit dfee8c58d4915f78f57545c26a492668b2b68a87Sven Gothel2012-07-061-2/+3
|
* Fix SWT GLCanvas threading. Note: On OSX _only_ it's main thread is valid!Sven Gothel2012-07-061-0/+11
|
* test scripts windows: use new jogl-all.jar and jogl-test.jarSven Gothel2012-07-066-9/+10
|
* Enhance Bootsrapping of JOGL around 37% - 40% (1st start in new JVM) - ↵Sven Gothel2012-07-061-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | GLProfile and GLContext* GLProfile: Enhance bootsrapping performance of loading GL*Impl class - Offthread classloading of all GL*Impl via reflection at startup reduces startup time here around 12% (800ms down to 700ms). GLContext*: Enhance bootsrapping performance of querying available GL profiles - Add PROFILE_ALIASING mode, defaults to true - can be disabled w/ property 'jogl.debug.GLContext.NoProfileAliasing' - PROFILE_ALIASING: If true (default), bootstrapping the available GL profiles will use the highest compatible GL context for each profile, hence skipping querying lower profiles if a compatible higher one is found. Linux x86_64 - Nvidia: 28%, 700ms down to 500ms Linux x86_64 - AMD : 40%, 1500ms down to 900ms - GL*Impl: - make fields final: glProfile, _context, buffer*Tracker and glStateTracker - allow null _context/glProfile in initialization (bootstrapping) - JoglVersion.getDefaultOpenGLInfo(..) - add arg: 'boolean withCapabilitiesInfo', allowing to suppres the list of caps
* GLContext adds FBO availability to profile mapping; Fix ↵Sven Gothel2012-07-051-11/+17
| | | | | | | | | | | | | | | | GL[Auto]Drawable/GLContext re-association (switch) incl. unit test. - GLContext adds FBO availability to profile mapping - GLContext added 'GLDrawable setGLDrawable(GLDrawable readWrite, boolean setWriteOnly)' allowing to set the write GLDrawable. This method enables switching context/drawable. Fix GL[Auto]Drawable/GLContext re-association (switch) incl. unit test Commit eed8508ae1132e5f45f788e9cb3f3d5a1050ac70 impl. of GLAutoDrawable's setContext(..) enabled proper setting of the GLAutoDrawable context incl. updating the context's drawables. Test covers: - remove/set (GLContext, GLEventListener) of GL[Auto]Drawable - switch (GLContext, GLEventListener) of 2 GLAutoDrawables
* Fix Bug #589 (JAWT Offscreen-Layer resize) and Offscreen-Layer ↵Sven Gothel2012-06-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | setSwapInterval() deadlock; Reuse JAWT instance; Cleanup - Fixes - OSXUtil.CreateCALayer*(..): Pass layer target size (if known). This fixes Bug #589 - MacOSXWindowSystemInterface-pbuffer.m: - ALL: displayLink NULL check - setSwapInterval(..): lock only for variable setting, could deadlock when start/stop CVDisplayLink - JAWTWindow.destroy(): use 'surfaceLock' instead of 'synchronized' - Cleanup / Performance - JAWTWindow.lockSurface(): Reuse JAWT instance - MacOSXJAWTWindow: AttachJAWTSurfaceLayer0(..) -> SetJAWTRootSurfaceLayer0(..) Reflects semantic better. - DEBUG - JAWTWindow.updateBounds(..) notify of bounds change
* Bug #589 - Enhance snapshot/textIO test: Add offscreen mode; Add AWT ↵Sven Gothel2012-06-281-4/+3
| | | | onscreen/offscreen-layer resize test.
* SWT GLCanvas: Fix destroy(), Remove local concurrency hack & out-of-process ↵Sven Gothel2012-06-281-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | locking ; Revise threading code; Proper name for SWT unit tests. SWT GLCanvas: - Fix destroy() drawable.setRealized(false); is being called within dispose() method - Remove local concurrency hack [MT-0] The hack: 'final GLContext ctx = getContext(); a = null != ctx ? ctx.something() : 0;' is thread safe locally, however, w/o covering the hole use case of the caller it makes no sense to add thread safe code here - would be only an illusion. In case any of the methods are called outside of a locked state extra care should be added. Maybe we shall expose locking facilities to the user. However, since the user shall stick to the GLEventListener model while utilizing GLAutoDrawable implementations, she is safe due to the implicit locked state. - Removing out-of-process locking [MT-1] Claiming the recursive lock in the dispose/display/.. methods and _then_ issuing a complex off-thread GL task could lead to deadlock. The GL task could involve calling GLEventListener methods, which itself could try to manipulate the GLCanvas -> deadlock. Similar to [MT-0] we may need to either find a proper locking mechanism or simply ignore it and reduce functionality. TBH .. the number of scenarious of the mentioned deadlock are very limited and exotic. - Revise threading code [MT-2] Besides the other MT-* remarks, the logic whether to spawn off the GL task and determination which thread to use is too complex and redundant. (See isRenderThread(), runInGLThread() and runInDesignatedGLThread()) - Proper name for SWT unit tests. Reflect the semantics.
* Complete Bug #598 - Commit a393e45613d87101dbb13763df263c2f9291d2d0Sven Gothel2012-06-261-3/+3
|
* Implement Bug #598 - JOGL ALL JAR File Change incl. it's Native Jar URL ↵Sven Gothel2012-06-262-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Derivation - Depends on GlueGen commit 9a71703904ebfec343fb2c7266343d37a2e4c3db JAR file name changes: ALL JARs: - jogl.all.jar -> jogl-all.jar - jogl.all-noawt.jar -> jogl-all-noawt.jar - jogl.all-mobile.jar -> jogl-all-mobile.jar - jogl.all-android.jar -> jogl-all-android.jar - jogl.all-android.apk -> jogl-all-android.apk Atomic JARs: - nativewindow.core.jar -> nativewindow-core.jar - nativewindow.awt.jar -> nativewindow-awt.jar - nativewindow.os.x11.jar -> nativewindow-os-x11.jar - nativewindow.os.win.jar -> nativewindow-os-win.jar - nativewindow.os.macosx.jar -> nativewindow-os-osx.jar - jogl.core.jar -> jogl-core.jar - jogl.sdk.jar -> jogl-sdk.jar - jogl.glmobile.jar -> jogl-glmobile.jar - jogl.glmobile.dbg.jar -> jogl-glmobile-dbg.jar - jogl.util.jar -> jogl-util.jar - jogl.glutess.jar -> jogl-glutess.jar - jogl.glumipmap.jar -> jogl-glumipmap.jar - jogl.util.fixedfuncemu.jar -> jogl-util-fixedfuncemu.jar - jogl.awt.jar -> jogl-awt.jar - jogl.swt.jar -> jogl-swt.jar - jogl.util.awt.jar -> jogl-util-awt.jar - jogl.os.x11.jar -> jogl-os-x11.jar - jogl.os.win.jar -> jogl-os-win.jar - jogl.os.osx.jar -> jogl-os-osx.jar - jogl.os.android.jar -> jogl-os-android.jar - jogl.gldesktop.jar -> jogl-gldesktop.jar - jogl.gldesktop.dbg.jar -> jogl-gldesktop-dbg.jar - jogl.glugldesktop.jar -> jogl-glu-gldesktop.jar - jogl.util.gldesktop.jar -> jogl-util-gldesktop.jar - jogl.omx.jar -> jogl-omx.jar - jogl.cg.jar -> jogl-cg.jar - newt.core.jar -> newt-core.jar - newt.ogl.jar -> newt-ogl.jar - newt.awt.jar -> newt-awt.jar - newt.event.jar -> newt-event.jar - newt.driver.x11.jar -> newt-driver-x11.jar - newt.driver.win.jar -> newt-driver-win.jar - newt.driver.macosx.jar -> newt-driver-osx.jar - newt.driver.android.jar -> newt-driver-android.jar - newt.driver.kd.jar -> newt-driver-kd.jar - newt.driver.intelgdl.jar -> newt-driver-intelgdl.jar - newt.driver.broadcomegl.jar -> newt-driver-broadcomegl.jar Test JARs: - jogl.test.jar -> jogl-test.jar - jogl.test-android.jar -> jogl-test-android.jar - jogl.test-android.apk -> jogl-test-android.apk
* test scriptSven Gothel2012-06-251-1/+2
|
* Fix path derivation of J2RE_HOME and JAVA_HOMESven Gothel2012-06-251-3/+3
|
* Tests [Multisample, Offscreen, ..]: Add Snapshots and store them in current ↵Sven Gothel2012-06-251-2/+2
| | | | | | directory instead of tempdir, so they get archived (CI/jenkins). Multisample/TestGLReadBufferUtilTextureIOWrite01NEWT: Add offscreen test
* Texture Unit Tests: AWT/NEWT GL2/ES2 PNGJ/AWT-PNG-Loading and Rendering ↵Sven Gothel2012-06-181-7/+8
| | | | | | | | | | | | | | (TestPNGTextureFromFile[AWT/NEWT]) Properly test combinations of TextureIO usage w/ - NEWT / AWT usage - GL2 / ES2 usage - PNG implementations: PNGJ (internal) and AWT - adding screenshots of result for later analysis Misc: - IOUtil.getResource(..) usage CLASS.class.getClassLoader() -> this.getClass().getClassLoader()
* Unit Test: Cleanup TextureSequence Demo Code and Tests, adding AWT Test ↵Sven Gothel2012-06-171-10/+25
| | | | 'launcher'
* Fix Bug 590: Wrong GL2 and GLES2 aliasing of ↵Sven Gothel2012-06-161-2/+2
| | | | | | | | | | | | | | | | GL_ARB_half_float_pixel/GL_ARB_half_float_vertex and GL_OES_texture_half_float extensions We mistakenly aliase the GL2 and GLES2 extensions: - GL_ARB_half_float_pixel - GL_HALF_FLOAT_ARB 0x140B - GL_ARB_half_float_vertex - GL_HALF_FLOAT 0x140B - GL_OES_texture_half_float extensions - GL_HALF_FLOAT_OES 0x8D61 This also leads to adding GL_HALF_FLOAT_OES to com.jogamp.opengl.util.GLBuffers.sizeof(..).
* Fix Bug 583: Remove Android compile-time dependencies and exclude Android ↵Sven Gothel2012-06-153-7/+7
| | | | | | | | | | | | | | specific classes for non Android platforms. Adapt to GlueGen commits: b3c9951006f9bd863244f1db3d54ac7866d66f0a, 86c1df6fdca183454ff544857f4236b646c4730d Ensure same Java JAR content regardless of build target (fix). Separate Android compilation results: jogl.all-android.jar and jogl.test-android.jar avoiding generating different content w/ non android builds. Adding ${android.abi} to APK target name (jogl.all-android.apk -> jogl.all-android-armeabi-v7a.apk) if not generic.
* Graph/Font Demo: Add simple 'one-file' demo/test 'TestTextRendererNEWT10' ↵Sven Gothel2012-05-161-1/+2
| | | | w/o GLEventListener
* Graph/Font Demo: Add simple 'one-file' demo/test 'TestTextRendererNEWT00'Sven Gothel2012-05-151-1/+2
| | | | .. also adding missing (c) of other graph unit test.
* TestGLContextSurfaceLockNEWT: Add GLWindow destroy @ test endSven Gothel2012-05-131-1/+1
|
* GLContext*: Remove '[set/is]Synchronized(..)' - Defaults to wait for locks: ↵Sven Gothel2012-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 1. Drawable, 2. GLContext Remove deadlock situation where thread-1 (Animator Thread) holds the GLContext-Lock and acquires the Surface-Lock, while thread-2 (UI/Main/EDT) holds the Surface-Lock and attempts to create the GLContext and hence acquires the GLContext-Lock. A GLContext-Lock and hence makeing the GLContext current requires to hold the Surface-Lock. The prev. code acquired the locks in reverse order and allowed the deadlock as described above. This fix acquires the locks in the proper natural order 1 - Surface-Lock 2 - GLContext-Lock This fix also renders the use of the non-synchronized behavior invalid, since it is bogus not to wait for the GLContext lock where it waits for the Surface lock. It also seems nonsense not to wait for any of both locks and our code always waited for both (synchronized := true). The GLContext [set/is]Synchronized(..) methods are removed and waiting for the lock per default is the correct behavior.
* GLContext/Surface Deadlock: Add unit test, provoking deadlock w/ 2 threads, ↵glctx_deadlockSven Gothel2012-05-131-1/+2
| | | | one holding the surfaceLock acquiring ctxLock where ctx acquires the surfaceLock
* Add unit tests for gluUnProject fix (commit ↵Sven Gothel2012-05-121-1/+2
| | | | cbc77718f01a8190e1a8aa0e9afdc2a3a3403358)
* Fix regression of commit de2b129a56335262a44a05541a3ab2e35668cc6e: ↵Sven Gothel2012-05-111-1/+3
| | | | | | | | | | | | | | | ProjectFloat Matrix Multiplication of gluUnProject(..) impl. ProjectFloat's previous gluMultMatricesf(..) used row-major order, but the replacement multMatrixf(..) uses column-major order (like OpenGL, ..). Note: The replaced 'gluMultMatrixVecf' by multMatrixVecf() already used column-major order. Fix: Reverse the arguments of matrix multiplication m1 x m2 -> m2 x m1 Added proper API documentation in FloatUtil -> Column Major Order of Linear Matrix Layout
* Android Unit Test (incomplete): Manually test new GlueGen's MainLauncherSven Gothel2012-05-031-12/+20
|
* Test script: Add commented-out CLASSPATH and cmd-line args for Broadcom testsSven Gothel2012-05-021-2/+5
|
* NEWT/OSX: Fix occasional crash 'free of non allocated object' - change ↵v2.0-rc8Sven Gothel2012-05-021-2/+2
| | | | window order on main-thread.
* test scriptsSven Gothel2012-04-271-3/+5
|
* Completing swap-interval implementation for OSX's CALayer usage. Closing Bug 555Sven Gothel2012-04-221-4/+3
| | | | | | | | | | | | - Based on Andres Colubri's initiative and commit 218d67fc0222d7709b21c45792d44501351939c4. - Reading real screen refresh rate ('stolen' from NEWT) - Properly handling swap-interval and vsync-to in native code - Increasing accuracy vsync-to to microseconds Tested manually w/ TestGearsES2AWT.
* Test: Added commented-out hacks for gdb invocation, OSX NSZombieEnabled env, ↵Sven Gothel2012-04-213-0/+7
| | | | and custom lib path; MovieCube: '-wait' to wait for debugger.
* Linux ARMel eabi: Use armv6t, soft-float - low profile to target more ↵Sven Gothel2012-04-182-1/+3
| | | | devices. Our ARMhf build is high profile.