aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* JOGL (Windows):Sven Gothel2010-04-1514-85/+244
| | | | | | | | | | | | | | | | | - WindowsWGLDrawableFactory is using [singleton] shared dummy resources for - Drawable and Context which are utilized in case they are needed .. They are removed at shutdown call - GLCapabilities - Set pbuffer as the HW capabilities show, hence onscreen && pbuffer is valid - DefaultGLCapabilitiesChooser: Respect PBuffer selection (fixed) Only skip a config, if request is !onscreen && pbuffer, but pbuffer n/a Tests: - JUnit Passed (Windows32: Chromium - Except PBuffer (n/a)
* Further ATI (fglrx) X11Display bug workaround/cleanupSven Gothel2010-04-1528-508/+1369
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - See https://bugzilla.mozilla.org/show_bug.cgi?id=486277 - Calling XCloseDisplay occasionally leads to a SIGSEGV, even thought the reference is valid and OK. Workaround is not to close any X11Display, but to hold them stashed and reuse them. Since we already pipeline all X11Display's via Nativewindow's X11Util, an added referenceCounter and a global active/passive list solved this problem. This workaround is only active in case 'isVendorATI()'. NEWT/NativeWindow X11: - Let XIOErrorHandler and invalid display references fail hard with FatalError, otherwise we won't see the stack trace - and those bugs are indeed fatal. NativeWindow X11: - Install XIOErrorHandler, which stays active. - X11Util.X11Display: - Add reference counter - Add global active/passive list. Passive if reference count == 0 and marked as 'un-closeable' (-> ATI). Reusing passive members when create a new display. - JOGL: - Use DeleteLocalRef() calls to free temp NIO buffer in manual *Copied implementation. - GLDrawableFactoryImpl: Be serious about the shutdown() semantics - *GraphicsConfiguration: - Fix the invalid Onscreen/PBuffer/Pixmap determination (X11/EGL/WGL) - Just return null if not valid - X11GLXGraphicsConfigurationFactory - FBConfig - Determine recommendedIndex properly .. - Don't bail out if a FBConfig is invalid .. - Use Chooser in case nothing is recommended .. - X11OffscreenGLXDrawable fixes bugs: - wrong (int) cast of parent window in XCreatePixmap call - setting display to zero too early in destruction, ie before XCloseDisplay - X11GLXDrawableFactory is using [singleton] shared dummy resources for - Screen, Drawable and Context which are utilized in case they are needed .. They are removed at shutdown call - GLXVersion gathering in GLXUtil now .. - DefaultGLCapabilitiesChooser: Respect PBuffer selection Tests: - Add DrawableFactory shutdown() - Add various Offscreen Capabilties - Add Offscreen and non-pbuffer case - JUnit Passed (Linux64bit: NVidia/ATI) - demos.jrefract.JRefract passed (Linux64bit: NVidia/ATI)
* ATI (fglrx) PBuffer/X11Display bug workaround/cleanupSven Gothel2010-04-1326-130/+317
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - See https://bugzilla.mozilla.org/show_bug.cgi?id=486277 - Description: - To use PBuffer, a context must be current - X11Display cannot be switched while using the PBuffer [within one thread]. Hence we shall try harder to reuse _the_ user configured X11Display - whenever possible. This is actually a good thing, ie cleanup up our code again. - Changes to workaround/cleanup: - GLDrawableFactory* methods 'canCreate*()' are changed to 'canCreate*(AbstractGraphicsDevice)' to allow pipelining the X11Display. This reduces the overhead of using a local TLS X11Display. - WindowsDummyWGLDrawable cstr gets the GLProfile as a parameter now, this is done while adding X11DummyGLXDrawable - forseeing the usecase to query available GLProfiles at startup. - X11DummyGLXDrawable added, following the WindowsDummyWGLDrawable path to have a dummy GLContext current to fix the ATI bug. NativeWindow X11: - Add XIOErrorHandler to identify the fatal failure of closing a Display (-> ATI bug). Build: - Adding ant.jar and ant-junit.jar to the junit compile/run classpath - Misc: - Fix: CreateDummyWindow(..) returns a HWND, not a HDC - mapToRealGLFunctionName: Added mapping for X11/GLX. - X11GLXGraphicsConfigurationFactory: Uncommented dead code 'createDefaultGraphicsConfigurationFBConfig' Tests: Passed (Linux64bit: NVidia/ATI) Todo: More tests on ATI, especially multithreading/X11Display usage.
* NEWT X11 Fix (mainly ATI and multithreading)Sven Gothel2010-04-138-163/+443
| | | | | | | | | | | | | | | | | | | | | | | | | | | - EventDispatchThread -> EDTUtil Since the name leads to the assumptions that an instance is the EDT. EDTUtil manages the EDT within. - EDTUtil, no more reference to Display, but use a Runnable for the pumpMessage() - Window.destroy() check if already done - X11Window: Added XErrorHandler to catch BadWindow and BadAtom while dispatching events - it is possible that the resource is already freed. Also added an XIOErrorHandler to identify the fatal Display* inaccessibility. Tests: - New junit/com/jogamp/test/junit/newt/TestWindows01NEWT.java Testing creation/destruction and double destruction (error case) - Fix: src/junit/com/jogamp/test/junit/jogl/offscreen/TestOffscreen01NEWT.java Properly holding all NEWT references .. Misc: - Reduced redundant NEWT 'toString()' output (*Capabilities, ..) -
* Fix: Use file.seperator (win32); Use java.home/bin/javaSven Gothel2010-04-101-3/+3
|
* ant 1.8.0 on win32Sven Gothel2010-04-102-3/+3
|
* *** Now Using Apache-Ant-1.8.0 ***Sven Gothel2010-04-1014-67/+206
| | | | | | | | | | | | | | | | | | | | Cleanup: - Adding Javac includeAntRuntime argument (false whenever possible) - Clear junit results folder before testing - <ant ..> tasks, use inheritRefs="true" inheritAll="true" whenever possible for better performance and consistency (no duplicate property names). The JOGL build -> build-<component> tree is clean in this respect. junit.run: Test*NEWT* Emulation of junit task, due to the fact that we have to place invoke our MainThread class first (-> MacOSX). Utilizing Ant-1.8.0 and ant-contrib-1.0b3 (loops, mutable properties). Fixed NEWT tests: - No more println .. using Assertions .. - Offscreen produces 2 files correctly (Linux/NVidia, OSX/NVidia, Win32/Emulation)
* Fix NEWT Window destroy/close race condition,Sven Gothel2010-04-094-57/+94
| | | | | | | | where a programatic window.destroy() call from thread 1 triggers a destroy() call via the native windowing toolkit via windowDestroyNotify(). It has to be checked/locked if a destroy is in progress, otherwise they could deadlock (OSX and Win32).
* junit: Add timeout (30s), enable offscreen testSven Gothel2010-04-093-7/+30
|
* Attach build-junit.xml to build.xml ; Add more tests Offscreen(broken on ↵Sven Gothel2010-04-0914-12/+1451
| | | | ATI), Drawable
* Fix missing MacOsX Newt refactoringSven Gothel2010-04-091-30/+30
|
* Added FIXME comment: DBLBUFOFFSCRN, to tag the impl of forcing single buffer ↵Sven Gothel2010-04-094-8/+8
| | | | on offscreen/pbuffer
* Cleanup ant files, intro: build-common.xml used for all targets; Extracting ↵Sven Gothel2010-04-099-895/+747
| | | | build-junit.xml
* Added doc/deployment:Sven Gothel2010-04-0814-224/+922
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | JOGL-JAR-BUNDELING.txt A first FAQ about the (new) JAR partitioning. lstjars/lstjars.linux_amd64-20100406.log A first deployment payload measurement in kBytes :) New JAR Partitioning: All-In-One (*all*): - with AWT - without AWT See JOGL-JAR-BUNDELING.txt Atomic: See JOGL-JAR-BUNDELING.txt - Removed property setup.noall, since the *all* targets are mandatory now. Currently - Added gl4 part (still empty) - Fixed make/lstjars.sh and etc/profile.jogl (new JAR bundles) - Fixed make/lstjars.sh to produce JAR and PACK200 numbers, and using the *all* bundles if possible. MacOsX: - Fix missing refactoring in src/newt/native/MacWindow.m - Adding missing NSWindowDelegate protocol to NewtMacWindow as mandatory since 10.3.6 Misc: - Applied: 'gluegen.cpptasks.striplibs' to all native libraries. - Use path.seperator (ant) and system.env.library.path (gluegen), for junit runs.
* added intelliJ modules for jogl, newt and nativewindow. Removed other ↵Michael Bien2010-04-0813-248/+52
| | | | projectfiles.
* removed duplicated imports in config files due to changes in gluegen.Michael Bien2010-04-084-7/+0
|
* modifications due to class movement in gluegen.Michael Bien2010-03-3132-61/+30
| | | | updated joglversion files.
* Merge branch 'master' of github.com:mbien/joglMichael Bien2010-03-3011-60/+61
|\
| * Merge branch 'master' of github.com:mbien/joglSven Gothel2010-03-3029-1148/+340
| |\
| * | Adaptions toSven Gothel2010-03-3010-60/+59
| | | | | | | | | | | | | | | http://www.jogamp.org/bugzilla/show_bug.cgi?id=392 7220416bcef3140883d3966d921442feae3107c4
| * | Merge branch 'master' of github.com:mbien/joglSven Gothel2010-03-2971-350/+343
| |\ \
| * | | Add uint32_tSven Gothel2010-03-291-0/+2
| | | |
* | | | fixed bug where gl3 impl package was placed in jogl.gl2.x11.jar.Michael Bien2010-03-291-4/+31
| |_|/ |/| | | | | | | | build creates now jogl.gl3.<os>.jar for each os.
* | | fixed a bunch of javadoc warnings.Michael Bien2010-03-2915-76/+77
| | |
* | | renamed BufferUtil to GLBuffers.Michael Bien2010-03-298-112/+93
| | |
* | | com.jogamp.opengl.util.BufferUtil extends com.jogamp.gluegen.runtime.Buffers.Michael Bien2010-03-2911-417/+78
| | | | | | | | | | | | removed all redundant methods from BufferUtil.
* | | renamed platform dependent BufferUtil into java file.Michael Bien2010-03-293-452/+1
| |/ |/|
* | moved com.jogamp.javafx.* to com.jogamp.*.Michael Bien2010-03-2968-337/+330
| |
* | changes due to BufferFactory -> Buffers renaming in gluegen.Michael Bien2010-03-293-13/+13
|/
* final large refactoring to move to com.jogamp.*.Michael Bien2010-03-28143-475/+476
|
* Merge branch 'master' of github.com:mbien/joglSven Gothel2010-03-28359-919/+1185
|\
| * refactoring part 5, (renaming com.sun.opengl->com.jogamp.opengl)Michael Bien2010-03-278-20/+25
| |
| * refactoring part 4 (remaining files): renamed com.sun.opengl -> ↵Michael Bien2010-03-2715-33/+33
| | | | | | | | com.jogamp.opengl.
| * refactoring part 3 (impl package): renamed com.sun.opengl -> com.jogamp.opengl.Michael Bien2010-03-2787-184/+184
| |
| * refactoring part 2 (glu package): renamed com.sun.opengl -> com.jogamp.opengl.Michael Bien2010-03-2796-256/+256
| |
| * refactoring: renamed com.sun.opengl -> com.jogamp.opengl.Michael Bien2010-03-27150-15444/+387
| |
| * added idea project filesMichael Bien2010-03-2711-0/+253
| |
| * refactoring due to gluegen changes.Michael Bien2010-03-2744-46/+15111
| | | | | | | | - renamed com.sun.gluegen.runtime -> com.jogamp.gluegen.runtime.
* | Adaption for gluegen a41f4d504d2f8cf58114d570d23f757ab2659cfcSven Gothel2010-03-282-2/+2
|/
* http://www.jogamp.org/bugzilla/show_bug.cgi?id=391Sven Gothel2010-03-262-8/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As shown below, the concurrent access of GLStateTracker while being cleared by GLContext.destroy() causes a NPE. GLContext.destroy() shall disable it first, then clear it. The state stack pop method shall also swap the mapping with a most atomic action. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at com.sun.opengl.impl.GLStateTracker.getInt(GLStateTracker.java:94) at com.sun.opengl.impl.gl2.GL2Impl.glGetIntegerv(GL2Impl.java:6102) at com.sun.opengl.impl.gl2.GL2Impl.imageSizeInBytes(GL2Impl.java:26000) at com.sun.opengl.impl.gl2.GL2Impl.imageSizeInBytes(GL2Impl.java:25713) at com.sun.opengl.impl.gl2.GL2Impl.glTexImage2D(GL2Impl.java:18692) at glredbook1314.combiner.init(combiner.java:104) at com.sun.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:88) at javax.media.opengl.awt.GLJPanel$Updater.init(GLJPanel.java:557) at com.sun.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:88) at com.sun.opengl.impl.GLPbufferImpl$InitAction.run(GLPbufferImpl.java:274) at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:149) at com.sun.opengl.impl.GLPbufferImpl.maybeDoSingleThreadedWorkaround(GLPbufferImpl.java:267) at com.sun.opengl.impl.GLPbufferImpl.swapBuffers(GLPbufferImpl.java:157) at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:159) at javax.media.opengl.awt.GLJPanel.dispose(GLJPanel.java:238) +++
* fixed compiler error in TextureRenderer.Michael Bien2010-03-261-1/+1
|
* http://www.jogamp.org/bugzilla/show_bug.cgi?id=378Sven Gothel2010-03-2612-183/+204
| | | | | | | | | | | | | | Changed solution with a necessary API change of TextureData etc. Adding required GLProfile element to the factories etc, so it is clear for which GLProfile data is being created without the need of a current GLContext. TextureData/AWTTextureData: Removed the glPostInit* effort .. IMPACT: Texture util's API change - minor user code change necessary. +++
* relocated lib/gluegen.compiler.linux-32bit.xml to gluegenSven Gothel2010-03-253-33/+2
|
* modified junit.run target to write junit test results to file (->ready for ↵Michael Bien2010-03-251-6/+9
| | | | hudson).
* http://www.jogamp.org/bugzilla/show_bug.cgi?id=378Sven Gothel2010-03-252-0/+227
| | | | | | | | | | | | | | | | | Test: Added JUNIT Test Environment: - tests: jogl.test.jar - run: 'ant junit.run' Currently only runs 1 test regarding this bug id. Adding PATH (windows) or LD_LIBRARY_PATH (unix). Test initialized AWTTextureData without a current GLContext and then uses it to render .. Solution: Pending initialization of GL depending data, offered in TextureData.glPostInit(), specialized in AWTTextureData.
* http://www.jogamp.org/bugzilla/show_bug.cgi?id=378Sven Gothel2010-03-257-23/+200
| | | | | | | | | | | | | | | | | Test: Added JUNIT Test Environment: - tests: jogl.test.jar - run: 'ant junit.run' Currently only runs 1 test regarding this bug id. Adding PATH (windows) or LD_LIBRARY_PATH (unix). Test initialized AWTTextureData without a current GLContext and then uses it to render .. Solution: Pending initialization of GL depending data, offered in TextureData.glPostInit(), specialized in AWTTextureData.
* http://www.jogamp.org/bugzilla/show_bug.cgi?id=363LICENSE_CLEANUP_STARTSven Gothel2010-03-2496-96/+96
| | | | Upgrade SGI FreeB license headers
* Drop PointerBuffer.wrapNative2Java(..)Sven Gothel2010-03-191-1/+1
| | | | | | in favor of a simple PointerBuffer.wrap(..), due to the new semantics, ie internal integer/long presentation. Fixed the javame code in this regard.
* variable renaming in config files due to changes in gluegen.Michael Bien2010-02-032-2/+2
|
* fixed "native taglet" javadoc build configuration.Michael Bien2009-11-301-15/+19
|