aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Added optimized path to GLDrawableHelper for situation where Kenneth Russel2006-02-215-39/+202
| | | | | | | | | | | | | | | | GLWorkerThread is being used; last context made current on that thread is left current on that thread. In the case where only a single OpenGL context is in use this eliminates the repeated calls to makeCurrent. Ran into same NVidia driver bug causing crashes upon exit with Java2D/OpenGL pipeline. Added workaround to GLDrawableHelper which can be enabled with -Djogl.nvidia.crash.workaround, which just disables this optimization. Fixed GLCanvas and GLPbufferImpl's destruction paths to behave correctly in the face of the context being left current on the GLWorkerThread. Updated code in Threading related to GLWorkerThread to interoperate better with Java2D/OpenGL pipeline. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@629 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed bug in GLDrawableHelper.invokeGL() where the previous initAction Kenneth Russel2006-02-211-0/+1
| | | | | | | was not being set up git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@628 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added support for calling makeCurrent() over and over again with Kenneth Russel2006-02-211-0/+15
| | | | | | | different contexts without explicitly calling release() git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@627 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added exception propagation from GLWorkerThreadKenneth Russel2006-02-212-9/+23
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@626 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added GLWorkerThread for moving OpenGL-related work onto a different Kenneth Russel2006-02-212-29/+224
| | | | | | | | thread than the EDT. Added option for it in Threading; needs testing on more platforms. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@625 232f8b59-042b-4e1e-8c03-345bb8c30851
* Changed locking protocol for on-screen surfaces to only use the JAWT's Kenneth Russel2006-02-2010-95/+74
| | | | | | | | | | | | | | | | | | | | | DrawingSurface locking primitives during the makeCurrent operation. While in theory the JAWT should be used for locking for the entire duration of the makeCurrent/release pair, in practice because OpenGL is orthogonal to the window system this is not really necessary, at least if higher-level locking primitives are used to make sure the window is not torn down out from under the library while OpenGL rendering is being performed. The OpenGL-related work done in GLCanvas.addNotify() and removeNotify() handles this. These changes enable simultaneous multi-head rendering on X11 systems with one OpenGL context per thread. Changed GLContext.destroy() to acquire the context's lock during the destroyImpl operation for correctness in the new protocol. Changed several Mac OS X native code entry points to not take an unnecessary NSView* argument. Tested with several demos on all platforms to stress creation and destruction of multiple kinds of OpenGL contexts. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@624 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-201-15/+15
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@623 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-191-19/+19
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@622 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added libjogl_drihack.so to dist native library jarsKenneth Russel2006-02-161-3/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@621 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-161-1/+1
| | | | | | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: Bumping RI Implementation-Version string to 1.0.0-beta3 (to be released soon) Modified Files: make/joglRIversion git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@620 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-161-20/+20
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@619 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-161-17/+28
| | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: Added more precision in description of Threading class in javadoc. In particular, differentiated between implementation and specification, while still pointing out important aspects of the current reference implementation that are germane to the programmer. Modified Files: src/classes/javax/media/opengl/Threading.java git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@618 232f8b59-042b-4e1e-8c03-345bb8c30851
* Reorganized and cleaned up FBO-related workarounds needed only on Kenneth Russel2006-02-161-31/+45
| | | | | | | | NVidia cards; made the code auto-detect whether the workaround is needed git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@617 232f8b59-042b-4e1e-8c03-345bb8c30851
* Renamed "offscreen" capability bits in GLCapabilities to "pbuffer" Kenneth Russel2006-02-168-55/+51
| | | | | | | | capability bits to be more explicit about how they are to be used; no objections from JSR-231 expert group git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@616 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed build breakage on 10.4 after last checkinKenneth Russel2006-02-161-3/+19
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@615 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed problems with lack of hardware acceleration on LinuxKenneth Russel2006-02-166-14/+258
| | | | | | | | | | | distributions using DRI drivers. Hacked around limitations of the current DRI implementation by manually dlopen'ing libGL.so.1; avoids changing glue code generation for core OpenGL 1.1 routines which do not otherwise need to be called through function pointers on any platform. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@614 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-161-104/+0
| | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: This utility class is going away per last putback comment. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@613 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-164-15/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: We are modifying the versioning for non-release builds. Now the timestamp is part of the implementation version string. For instance, "1.0.0-pre-20060215-17:03:32" is an implementation of the 1.0.0 version of the API built on Feb. 15, 2006, at 5:03:32 PM. This is how our daily build version strings will look. This is how the default build works. Our official beta builds which are known as "stable" builds will have a version string like: "1.0.0-beta3", etc. Our final version of 1.0.0 implementation will become the "release" build and the version string will be: 1.0.0 There are two easy ways to obtain the version string: 1) use the jogl.verbose properties flag (-Djogl.verbose) to see it at the command line 2) use the java.lang.Package API to query it programatically. See example in demos called demos/misc/VersionInfo We are removing the Version utility class because it was insufficient for a number of reasons. It should be removed with this putback. I am not 100% positive that this does not break the JOGLAppletLauncher class with the change that I have putback, but I can't test it here in my environment. And I am pretty sure it will still work, but we will test it. Modified Files: src/classes/com/sun/opengl/util/JOGLAppletLauncher.java make/joglversion make/build.xml make/joglRIversion ---------------------------------------------------------------------- git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@612 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added note on limitations of OpenGL context sharing to spec overviewKenneth Russel2006-02-155-8/+32
| | | | | | | | and pointed to it from GLDrawableFactory, GLDrawable, GLCanvas and GLJPanel git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@611 232f8b59-042b-4e1e-8c03-345bb8c30851
* expose JOGL built-in gl pixel format to usersGerard Ziemski2006-02-151-3/+20
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@610 232f8b59-042b-4e1e-8c03-345bb8c30851
* progress on gl pixel format enumeration mechanismGerard Ziemski2006-02-151-143/+393
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@609 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-141-16/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@608 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added workaround for apparent driver problem when FBOs are enabled in Kenneth Russel2006-02-131-0/+16
| | | | | | | the Java2D/JOGL bridge apparently causing exhaustion of VRAM git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@607 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added GlueGen sources, LICENSEs and READMEs to JOGL dist's jogl-src.zipKenneth Russel2006-02-131-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@606 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-131-17/+17
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@605 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added more verbose debugging output to GLJPanelKenneth Russel2006-02-131-0/+24
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@604 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added checking of whether the correct GLContext is current to the Kenneth Russel2006-02-122-13/+26
| | | | | | | | | DebugGL pipeline. Fixed dependencies in JOGL and JOAL build.xml files so that generated code gets automatically rebuilt if GlueGen is updated. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@603 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-121-16/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@602 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-111-16/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@601 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed old items from TODO.txtKenneth Russel2006-02-111-42/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@600 232f8b59-042b-4e1e-8c03-345bb8c30851
* Completion of initial work on FBO support in Java2D/JOGL bridge. Kenneth Russel2006-02-116-54/+144
| | | | | | | | | | | | | | | | | | | | | Discovered it was necessary to re-attach the color and depth renderbuffers to the FBO in JOGL's context, even though it shared textures and display lists with Java2D's context; this may be a driver problem and merits further investigation. Found it was also necessary to create a new depth renderbuffer; apparently could not use Java2D's. This is almost certainly a driver bug. At this point, with the forthcoming planned changes to Mustang, JOGL works when -Dsun.java2d.opengl.fbobject=true is specified. Problems remain with the HWShadowmapsSimple (extremely slow performance) and InfiniteShadowVolumes (throws exception because of inability to share textures and display lists between pbuffer's context with stencil buffer and Java2D's context) demos. Worked around earlier exceptions with InfiniteShadowvolumes demo by avoiding sharing textures and display lists with dummy GLContexts. Changed build to produce DebugGL and TraceGL earlier so they can be used in e.g. GLJPanel. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@599 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-113-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: Change the implementation for querying version information when the property jogl.verbose is used. This now uses the java.lang.Package API to get information from the jogl.jar manifest instead of using com.sun.opengl.util.Version. com.sun.util.opengl.Version API will be going away soon. It is not rich enough to differentiate the specification version, the implementation version, the implementation vendor, etc. % java -Djava.library.path=/home/tbryson/temp/libs -Djogl.verbose demos.gears.Gears JOGL specification version 1.0 Public Review plus JOGL implementation version 1.0 Beta2 plus JOGL implementation vendor java.net JOGL community . . . I added "plus" in the version/spec information for the builds starting tonight so we will be able to differentiate between the official Beta 2 build and all subsequent builds, etc. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@598 232f8b59-042b-4e1e-8c03-345bb8c30851
* Further work on FBO support in Java2D/JOGL bridge. Upgraded JOGL's Kenneth Russel2006-02-118-72/+208
| | | | | | | | | | | | | Java2D class to latest proposed set of APIs in OGLUtilities and changed usage of these APIs to be approximately correct. Left in fallback path for working with non-FBO case in current Mustang builds. Not working yet, and don't yet understand why; checking in at this intermediate point to be able to more easily test on more machines. Added error checking to creation of external GLContexts and GLDrawables on Windows and X11 platforms. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@597 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added more debugging output on X11 side to track down Linux problemsKenneth Russel2006-02-102-2/+27
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@596 232f8b59-042b-4e1e-8c03-345bb8c30851
* Made loading of GLU library lazier, partially in the hope that thisKenneth Russel2006-02-108-10/+52
| | | | | | | | may address problems on certain Linux distributions where for some reason we're falling back to software rendering with Mesa git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@595 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-101-16/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@594 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 203: Missing setup of GL_UNPACK_ALIGNMENT for mipmapped Kenneth Russel2006-02-101-4/+12
| | | | | | | | | images in TextureIO Added missing set of GL_UNPACK_ALIGNMENT in mipmap case. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@593 232f8b59-042b-4e1e-8c03-345bb8c30851
* Issue number:gfxadmin2006-02-105-264/+288
| | | | | | | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Travis Reviewed by: These are all documentation changes in preparation for the Proposed Final Draft submission. Carefully separated out references to the implementation from the specification. Did not delete any comments, just made sure that it was clear when it was the Reference Implementation being referred to. Add note to Spec Overview about version information. We now include version information in the manifest of the jar file and we require this of all implementations. This is currently done automatically as part of the build process and is easy to access at runtime with the java.lang.Package APIs. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@592 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added note requested by Justin Couch on needing JDK 5 for AMD64 buildsKenneth Russel2006-02-091-2/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@591 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-091-15/+15
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@590 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-081-16/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@589 232f8b59-042b-4e1e-8c03-345bb8c30851
* Changed syslibset for Xxf86vm to be non-static to work around apparentKenneth Russel2006-02-071-3/+3
| | | | | | | bugs causing Linux natives to grow to huge size git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@588 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-071-19/+19
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@587 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed build breakage on X11 platforms after change to GlueGen'sKenneth Russel2006-02-071-8/+5
| | | | | | | argument name substitution to include offset arguments for arrays git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@586 232f8b59-042b-4e1e-8c03-345bb8c30851
* Further work on FBO support in Java2D/JOGL bridge. Recast how Kenneth Russel2006-02-065-53/+227
| | | | | | | | | | | | | | | | | | GLObjectTrackers are specified between contexts and separated this from the maintenance of the GLContextShareSet, although the API (registerForObjectTracking) is in the GLContextShareSet class. If the Java2D/OpenGL pipeline and FBOs are active, causes all JOGL contexts created to share textures and display lists with a context from Java2D (currently acquired from a VolatileImage, but will probably need to change how this is done). GLObjectTrackers however are only shared between JOGL contexts where the user has explicitly requested sharing. This yields the expected semantics of server-side object deletion when the context is destroyed. Upgraded GLJPanel to handle FBO manipulation. Not working yet; more debugging necessary on Java2D side as well. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@585 232f8b59-042b-4e1e-8c03-345bb8c30851
* Intermediate checkin for FBO support in Java2D/JOGL bridge. Needed to Kenneth Russel2006-02-057-9/+912
| | | | | | | | | | | | | | | | | | | | | | | | | | | keep track of server-side OpenGL objects, like textures and display lists, created by the end user to preserve the illusion of independent contexts even though they will all share textures and display lists with the Java2D OpenGL context in order to access its FBO. Added GLObjectTracker class to track creation and destruction of these objects and to support cleanup when the last referring context has been destroyed. Modified GLContextShareSet to create and install GLObjectTrackers when necessary and GLContext to ref and unref tracker appropriately. Changed GlueGen's JavaPrologue and JavaEpilogue directives (and their documentation) to perform argument name substitution. Wrote documentation section on argument name substitution and specified behavior for primitive arrays (converts to string "array_name, array_name_offset" in substitution). Rephrased GlueGen's RangeCheck directives in terms of JavaPrologue directives and deleted old specialized code. Fixed bug in handling of VBO support in GLConfiguration when JavaPrologue was present for affected functions. Added JavaPrologue and JavaEpilogue directives to all existing OpenGL routines creating server-side objects (though it's possible some were missed) to call GLObjectTracker when necessary. Added RangeCheck directives for these routines as well. Worked around bug in JOGL demos where shutdownDemo() was being called more than once. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@584 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-051-15/+15
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@583 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated nightly buildgfxadmin2006-02-041-20/+20
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@582 232f8b59-042b-4e1e-8c03-345bb8c30851
* Upgraded contributor agreement to current final versionKenneth Russel2006-02-033-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@581 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 199: Incorporate tile rendering library Kenneth Russel2006-02-022-2/+637
| | | | | | | | | | | With the permission of the author, Brian Paul, the Mesa tile rendering library has been incorporated under BSD-compatible licensing terms thanks to porting work by user bleb from the javagaming.org forums. Added demos.misc.TiledRendering demo creating a high-resolution screenshot of the Gears demo. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@580 232f8b59-042b-4e1e-8c03-345bb8c30851