summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix Bug 642 TestJSplitPaneMixHwLw01AWT (AWT-GLCanvas); Robustness ↵Sven Gothel2012-12-229-33/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | GLContext/GLDrawable - Fix Bug 642 TestJSplitPaneMixHwLw01AWT On Windows platform when mixing hw/lw JSplitPanel, the GLCanvas is removed and added when splitter is moved. The lack of robustness (see below) lead to an exception. Note: Only w/ GLJPanel (no hw/lw mixing) the splitter can be moved in both direction. Only here it is guaranteed that the GL component will survive the action. - Fix AWT-GLCanvas EDT Runnable: swapBuffer().. / display(..) - Check drawable.isRealized() within the lock on the performing thread. This is not possible before issuing the EDT Runnable action since we cannot hold the lock beforehand. - Robustness GLDrawableImpl - boolean realized -> volatile boolean realized - remove 'synchronized' on isRealized() and setRealized(..) - Use dbl-checked locking on 'realized' test for swapBuffers() and setRealized(..) - Robustness GLContextImpl - Catch createImpl(..) exception and properly return CONTEXT_NOT_CURRENT
* *Drawable impl. DEBUG: Add getThreadName() to debug out.Sven Gothel2012-12-228-13/+16
|
* FBObject, minor edit: GL2GL3.GL_MAX_COLOR_ATTACHMENTS -> ↵Sven Gothel2012-12-211-1/+2
| | | | GL2ES2.GL_MAX_COLOR_ATTACHMENTS
* GLContextImpl: Make createContextARBImpl/setGLFunctionAvailability more ↵Sven Gothel2012-12-2112-29/+38
| | | | robost while detecting erroneous queried GL version
* Bug 651: Mesa3D: GL_INVALID_ENUM in ↵Sven Gothel2012-12-203-19/+237
| | | | | | | | | | glGetIntegerv(pname=GL_MAX_TEXTURE_IMAGE_UNITS) ; Add unit test / bisect Mesa3D This bug lies within Mesa3D (any renderer) and is fixed in commit 8dc79ae7d73cf6711c2182ff9a5d37ef6c989d23. Mesa3D Version 9.0 still exposes this bug, where 9.0.1 has it fixed w/ above commit.
* Cleanup atomic JARs; Removed Debug/Trace pipelines of common profilesSven Gothel2012-12-162-50/+26
| | | | | | | | | | | | | | | | | | | | | GLU: jogl-glu.jar <- jogl-glutess.jar, jogl-glumipmap.jar and javax/media/opengl/glu/* javax/media/opengl/glu/gl2es1/* jogamp/opengl/glu/* jogamp/opengl/glu/error/* jogl-glu-gldesktop.jar stays. CORE (jogl.core.jar): + com/jogamp/opengl/util/* + jogamp/opengl/util/* + com/jogamp/opengl/util/glsl/* + jogamp/opengl/util/glsl/* DEBUG/TRACE: Removed Debug/Trace pipelines of common profiles (won't work anyways) - [Debug|Trace]GL2ES1 - [Debug|Trace]GL2ES2 - [Debug|Trace]GL2GL3
* test scriptSven Gothel2012-12-161-4/+4
|
* Bug642: Add test case for Swing JSplit Pane w/ GLCanvas and GLJPanelSven Gothel2012-12-161-0/+179
|
* MacOSXCGLContext: Use new setLocation(gl, shader-program); Minor edits..Sven Gothel2012-12-163-3/+3
|
* GLJPanel: Impl. is GLProfile agnostic; Use ↵Sven Gothel2012-12-166-427/+463
| | | | | | | | | | | | | | GLDrawableFactory.createOffscreenDrawable(..) for common OffscreenBackend (dropping pbuffer/software); Flip FBO w/ GLSL texture renderer. - Implementation is GLProfile agnostic - Shall work on ES2, GL2, .. etc - Use GLDrawableFactory.createOffscreenDrawable(..) for common OffscreenBackend (dropping pbuffer/software) - Leave offscreen selection to common factory code, favoring FBO - Flip FBO w/ GLSL texture renderer - Faster on low CPU machines - Enabled if GL2ES2 and FBO offscreen
* Fix/Complete commit b8a8fc24a3afb0cb06a31504bdea1a98b8f00ef4 - Adding ↵Sven Gothel2012-12-162-3/+12
| | | | missing GLU code
* GLArrayData/ImmModeSink: Remove implicit dependency on ShaderState - allow ↵Sven Gothel2012-12-1621-327/+1283
| | | | | | | | | | | | | | | | | | | | | | operating w/o it; ShaderState: Remove notion of GL context attachment, use pass-through or object association; GLArrayData/GLUniformData: Add basic GLSL location methods - GLArrayData/GLUniformData: Add basic GLSL location methods - GLArrayData - add: setLocation(..) for attribute location/index retrieval (post link) and binding (pre link) - GLUniformData - add: setLocation(..) for attribute location/index retrieval (post link) - GLArrayData/ImmModeSink: Remove implicit dependency on ShaderState - allow operating w/o it - GLArrayData - add: 'public void associate(Object obj, boolean enable)', allows setting ShaderState usage - ShaderState: Remove notion of GL context attachment, use pass-through or object association - ownsAttribute(..) associates the attribute w/ ShaderState - removed GL context ShaderState attachment Tested: - ImmModeSink w/ GLSL/ES2 w/ and w/o ShaderState - GLArrayData* w/ and w/o ShaderState
* Cleanup GLContext special entries: getOffscreenContextPixelDataType(), ↵Sven Gothel2012-12-1519-120/+187
| | | | | | | | | | | | | | | | | | | | | | | getOffscreenContextReadBuffer(), .. ; Add GLFBODrawable API entries for multi buffering (no impl. yet); GLJPanel 1st simplification using offscreen drawable - Cleanup GLContext special entries: getOffscreenContextPixelDataType(), getOffscreenContextReadBuffer(), .. ; - add: getDefaultReadBuffer() (-> exposed via GLBase as well) - add: isGLOrientationFlippedVertical() - add: getDefaultPixelDataType() - removed impl: getOffscreenContextPixelDataType() - removed impl: getOffscreenContextReadBuffer() - removed impl: offscreenImageNeedsVerticalFlip() - Add GLFBODrawable API entries for multi buffering (no impl. yet); - TODO: Add implementation code in GLFBODrawableImpl - GLJPanel 1st simplification using FBO - Use above new GL/GLContext entries - Fix: getNativeSurface() and getHandle() - TODO: - Remove distinction of 'pbuffer' and 'software', - Use GLDrawableFactory.createOffscreenDrawable(..) - Use GL for FBO swapping
* WWW: Link to Siggraph2012 page and use relative URL to wikiSven Gothel2012-12-071-5/+5
|
* WWW: reorder siggraphSven Gothel2012-12-061-1/+1
|
* Add siggraph2012Sven Gothel2012-12-061-0/+1
|
* Add Java3d and nifty-guiSven Gothel2012-12-053-1/+20
|
* Update JOGL WWW page (Added sections: App, Util, Games, Old; Added Ardor3D, ↵Sven Gothel2012-12-055-459/+559
| | | | jME3, ticked2ride, jake2 update ..); Cleanup html5.
* SWT GLCanvas: Fix sporadic drop of redraw on X11 _and_ allow using custom ↵Sven Gothel2012-12-0417-306/+924
| | | | | | | | | | | | | | | | | | GLCapabilities on X11 (feature complete) To allow custom GLCapabilities, we had to use native parenting on X11 w/ a new child window. The desired visualID chosen by the users GLCapabilities is passed to the new child window. The redraw drops must be caused by the original GDK or the new child GDK window. Now we use a plain X11 child window similar to NEWT's X11 window and NewtCanvasSWT, which doesn't expose this bug. (Note: SWTAccessor/GLCanvas still contains the uncommented GDK code path for further inspection, if desired) Also added SWTNewtEventFactory to test event handling on the SWT GLCanvas w/ GearsES2. TestSWTJOGLGLCanvas01GLn tests custom GLCapabilities now. SWTEDTUtil has been moved to private: com.jogamp.newt.swt -> jogamp.newt.swt.
* Fix GLDrawableHelper invokeGLImpl(..): Only attempt to release context after ↵Sven Gothel2012-12-021-25/+28
| | | | successfull claim; Also fix intendations of block.
* SWT GLCanvas/NewtCanvasSWT: Check isVisible() @ validation; NewtCanvasSWT ↵Sven Gothel2012-12-025-60/+114
| | | | | | | | | | remove just introduced setVisible(false) and adapt to setEDTUtil() changes. ; Enhance Bug 643 unit test: Also test NEWT EDT and pre-visible GLWindow. - SWT GLCanvas/NewtCanvasSWT: Check isVisible() @ validation - NewtCanvasSWT remove just introduced setVisible(false) and adapt to setEDTUtil() changes - Enhance Bug 643 unit test: Also test NEWT EDT and pre-visible GLWindow.
* NEWT EDTUtil: Simplify running state (default is running @ setEDTUtil()); ↵Sven Gothel2012-12-027-80/+81
| | | | Simplify DefaultEDTUtil impl. and fix concurrency leak w/ 'shouldStop'
* Fix Bug 643: SWT 'display.asyncExec(Runnable runnable)' runnable not ↵Sven Gothel2012-12-021-10/+9
| | | | | | | | | | | | executed on Windows Turns out that the NEWT Windows impl. didn't properly validated the client region @ WM_PAINT and hence 'exhausted' the message pipeline, i.e. never reached an IDLE state. The latter caused SWT to never reach a point where deferred asyncExec(..) Runnables got processed. Besides this SWT effect, this also caused a NEWT window on Windows to always repaint itself (?).
* NEWT WindowImpl fixes: surfaceLockCount-- if native lock fails; ↵Sven Gothel2012-12-022-28/+36
| | | | | | | | | | | | | | | | | | waitForVisible(.., fastFail:=false); waitForSize(..) @ setSize; reparent definePosition(..); - surfaceLockCount-- if native lock fails In case native lock fails, not only remove the windowLock but also decr. surfaceLockCount (proper roll back) - was a BUG! - waitForVisible(.., fastFail:=false) Don't fail fast if visibility wasn't reached. - waitForSize(..) @ setSize Wait for size change - otherwise an SWT child won't reach desired size. - reparent definePosition(..); Position might not get updated by WM events (SWT parent apparently) - Windows WindowDriver: Cleanup code a bit.
* NEWT WindowImpl: Don't issue native resize if invisible, simply use ↵Sven Gothel2012-11-301-18/+13
| | | | | | | | | | | | | | | | | defineSize(..); Don't set persitent undecorated flag if child window at creation; Use local 'screen' directly. - Don't issue native resize if invisible, simply use defineSize(..) Invisible windows may not promote size change natively, hence simply setting the size via defineSize(..) is appropriate. Latter setVisible(true) will take size into account. - Don't set persitent undecorated flag if child window at creation Even if a window is a child at creation, it maybe reparented to top-level where the default behavior is to be expected. Undecorated top-level window shall require explicit setUndecorated(true). - Use local 'screen' directly. No need to make code more complicate ..
* Fix NewtCanvasSWT's newtChild usage: Only use set newtChild if it's ready, ↵Sven Gothel2012-11-301-6/+15
| | | | i.e. SWTEDTUtil set and parented; Recognize pending resize.
* Simplify NEWT EDTUtil invoke: To start EDT Runnable maybe null - start EDT ↵Sven Gothel2012-11-305-62/+54
| | | | | | even if on EDT thread. DEBUG: Name EDTUtil impl, e.g. Default, AWT and SWT
* Bug628: Adding unit-test 'TestNewtCanvasSWTBug628ResizeDeadlock' exposing ↵Sven Gothel2012-11-294-9/+292
| | | | | | | | | | | NewtCanvasSWT asyncExec(..) bug w/ native parenting The unit test shows, that while using JOGL's SWT GLCanvas Display's asyncExec(..) works properly, but w/ NewtCanvasSWT on Windows does not. NewtCanvasSWT differs w/: - Using native parenting [Newt GLWindow to SWT Canvas] - Processing native events in own NEWT EDT, w/ own Windows dispatch hook [For the child GLWindow only]
* NewtCanvasSWT: Add DisposeListenerSven Gothel2012-11-291-3/+18
|
* SWT GLCanvas: Fix dispose bug, check for isDisposed() and add ↵Sven Gothel2012-11-293-21/+56
| | | | | | | | | | | | | | DisposeListener; Run GL tasks on current thread w/o restrictions Fix dispose bug, check for isDisposed() and add DisposeListener - Don't issue SWTAccessor.setRealized(..), since it's called implicit via super.dispose() - Check isDisposed() .. - add DisposeListener to act on parent's disposal (Shell, Composition, ..) Run GL tasks on current thread w/o restrictions + * The current thread seems to be valid for all platforms, + * since no SWT lifecycle tasks are being performed w/ this call. + * Only GL task, which are independent from the SWT threading model.
* TestSWTJOGLGLCanvas01GLn: Use display.syncExec(..) where possible, add AnimatorSven Gothel2012-11-291-5/+24
|
* SWTAccessor: Add SWT 4.3's X11-GTK version adaption (2.14, 2.24, 3.0)Sven Gothel2012-11-291-46/+170
|
* SWT Solaris x86 files: Use version 4.2, 4.3.0-M3 fails, see README.txtSven Gothel2012-11-282-0/+9
|
* Fix etc/test_dbg.sh: Missing jogl.all.jar -> jogl-all.jarSven Gothel2012-11-281-1/+1
|
* Complete commit 541bcc1eecc50656392e1fec1a27b08ab78eceff (SWT version bump ↵Sven Gothel2012-11-281-0/+1
| | | | 3.7.1 -> 4.3.0-M3): gtk-freebsd-x86_64 is still on 3.7.1
* etc/profile.jogl: Fix OpenIndiana ARCH i86pc -> x86 (used currently for SWT ↵Sven Gothel2012-11-281-0/+4
| | | | tests only)
* Fix regression of commit 4dd44b985fe0541be3a3bcd9045d201ed3ca2cc5: Setting ↵Sven Gothel2012-11-281-1/+1
| | | | 'sendReshape' for onscreen drawables as well.
* Fix script lstjars.sh's pack200 listSven Gothel2012-11-271-3/+4
|
* X11Util/Xmisc setX11ErrorHandler: Force setting X11 error handler if invoked ↵Sven Gothel2012-11-272-23/+25
| | | | | | | | | from Java ensuring to overwrite other TKs handler SWT sets it's error handler, which exits application in case of an X11 error (e.g. n/a GL3 impl.). We need to allow overwriting it, hence allowing multiple calls (NEWT, GLContext). This patch also makes native NativewindowCommon_x11ErrorHandlerEnable(..) function static.
* SWTEDTUtil/AWTEDTUtil: Fix deadlock situations ; Cleanup ↵Sven Gothel2012-11-2710-121/+258
| | | | | | | | | | TestNewtCanvasSWTBug628ResizeDeadlock - Fix deadlock situation in waitUntilStopped/Idle(), skip if on AWT/SWT EDT - Use RunnableTask for sync task invocation, don't block AWT/SWT EDT. - Cleanup TestNewtCanvasSWTBug628ResizeDeadlock (works on OSX as well)
* SWTAccessor: OS_gtk_widget_unrealize optional (SWT 4.3) ; decorate ↵Sven Gothel2012-11-263-10/+40
| | | | PrivilegedAction for static initSingleton block (SWTAccessor, NewtFactory, NativeWindowFactory)
* SWT: Bump to version 4.3.0 M3 201210312000Sven Gothel2012-11-2621-375/+31
|
* Add test-x64 script for running SWT junit test cases (only) - also documents ↵Sven Gothel2012-11-251-0/+7
| | | | how to run partial junit tests
* SWTEDTUtil/AWTEDTUtil: Fix deadlock situation in waitUntilStopped(), etc - ↵Sven Gothel2012-11-253-15/+25
| | | | | | wrap task execution (or enqueing) into status-sync 'edtLock' This fixes the disparity w/ DefaultEDTUtil, i.e. aligns it's implementation/semantics.
* FPSAnimator: Add note on deamon-thread and JVM shutdown behavior.Sven Gothel2012-11-252-5/+11
|
* Fix SWTEDTUtil Bug628: Perform NEWT event dispatching on SWT-EDT, due to ↵Sven Gothel2012-11-233-13/+16
| | | | | | possible triggered locking action, i.e. display(). Do the same for AWTEDTUtil. This fix actually clarifies the annotated FIXME :)
* Bug628: Adding unit test reproducing the deadlock realiable withing first ↵Sven Gothel2012-11-233-9/+370
| | | | | | | rounds of multi-threaded display. If a NEWT Window locking operation is performed from within NEWT's EDT (native event dispatch) and a mutable SWT operation performed via NEWT's display invoke - a deadlock occurs.
* Merge pull request #53 from HaZuki/FixQuaternionSpikeSven Gothel2012-11-211-2/+2
|\ | | | | | | | | | | Fix Bug : Quaternion multiplication unexpected behavior Matches description in Bug 631 https://jogamp.org/bugzilla/show_bug.cgi?id=636
| * Fix Bug : Quaternion multiplication unexpected behaviorHaZuki2012-11-161-2/+2
| |
* | OSX CALayer Stencil/.. Fix: In case of FBO CALayer usage, use default ↵Sven Gothel2012-11-2110-71/+315
|/ | | | | | | | | | caps/pixelformat w/ chosen GLProfile only Using a pixelformat w/ chosen stencil for CALayer does corrupt rendering for an unknown reason, probably due to incompatible pixelformat w/ CALayer composition. This patch simply discards any special chosen caps, while only recognizing the desired GLProfile for the FBO CALayer pixelformat.