Jogamp
jogl-demos.git
12 years agoFixed crash bug in HWShadowapsSimple demo caused by incorrect buffer JSR-231 jausoft/JSR-231 jogamp/JSR-231 mbien/JSR-231 origin/JSR-231
Kenneth Russel [Sat, 22 Oct 2005 19:32:27 +0000 (19:32 +0000)]
Fixed crash bug in HWShadowapsSimple demo caused by incorrect buffer
offsets and implicit slicing (copied makeRGBTexture from
VertexProgRefract demo)

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@142 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed X11 build breakage after checkin of XTrans demo (unnecessary
Kenneth Russel [Wed, 19 Oct 2005 19:04:55 +0000 (19:04 +0000)]
Fixed X11 build breakage after checkin of XTrans demo (unnecessary
downward references to com.sun.opengl.impl.windows package)

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@141 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded XTrans (Accelerated Transitions) demo, which uses the
Kenneth Russel [Wed, 12 Oct 2005 01:30:31 +0000 (01:30 +0000)]
Added XTrans (Accelerated Transitions) demo, which uses the
Java2D/JOGL bridge in a completely different way than the GLJPanel.
The OffscreenDesktopPane and associated classes are an attempt at a
generalized mechanism for supporting off-screen rendering of Swing
components within a JDesktopPane and later composition (by subclasses)
of those components' contents on-screen. The XTDesktopPane is intended
to be a drop-in replacement for the JDesktopPane which supports
OpenGL-accelerated animated transitions for components added to and
removed from it.

The XTBasicTransitionManager and XTBasicTransition classes define the
default implementation of animated transition effects, supporting a
combination of fade, rotation and scroll effects. More, and arbitrary,
transitions are certainly possible. More experimentation by the
community is needed.

This demo is intended as a first step toward a more generalized
framework in which arbitrary Swing rendering can be performed via the
Java2D/JOGL bridge.

Bugs remain, such as needing to preserve portions of the
OffscreenDesktopManager's back buffer after components have been made
not visible (during the process of closing them) in order to properly
animate their close effects. The XTrans demo works properly in most
cases but the JRefract demo (which now accepts an -xt command line
argument to install an XTDesktopPane instead of a JDesktopPane) does
not. More work also remains to be done, in particular on the layout of
components on the back buffer. A 2D bin-packing algorithm is needed.

When the Java2D/JOGL bridge supports Java2D's use of the Frame Buffer
Object extension (and, implicitly, render-to-texture on all platforms)
the glCopyTexSubImage2D operation to copy the off-screen back buffer
to a VolatileImage can disappear; this is the principal expensive
operation when the contents change of components which have been added
to the OffscreenDesktopPane.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@140 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRemoved debugging code accidentally included in last checkin
Kenneth Russel [Wed, 12 Oct 2005 00:57:27 +0000 (00:57 +0000)]
Removed debugging code accidentally included in last checkin

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@139 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoCleaned up ^Ms
Kenneth Russel [Wed, 5 Oct 2005 21:45:12 +0000 (21:45 +0000)]
Cleaned up ^Ms

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@138 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRemoved GLU entry points for mipmapping and scaling routines taking
Kenneth Russel [Mon, 26 Sep 2005 00:27:18 +0000 (00:27 +0000)]
Removed GLU entry points for mipmapping and scaling routines taking
primitive arrays in place of C void* arguments; now only variants are
those taking Buffer, as in the rest of the API. Added new convenience
routines to BufferUtils and made original copying convenience routines
respect Buffer position and limits.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@137 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoChanged GLDrawableFactory.canCreateGLPbuffer(GLCapabilities, int, int)
Kenneth Russel [Sun, 25 Sep 2005 23:36:12 +0000 (23:36 +0000)]
Changed GLDrawableFactory.canCreateGLPbuffer(GLCapabilities, int, int)
to take no arguments because in general it is not possible to answer
that question without actually attempting to create the pbuffer.
Instead this method is now a simple capability check of whether the
current graphics card supports pbuffers.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@136 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoChanged GLU to be a single class rather than a separate interface and
Kenneth Russel [Sun, 25 Sep 2005 07:26:00 +0000 (07:26 +0000)]
Changed GLU to be a single class rather than a separate interface and
implementing class. Broke dependence from GLContext and GLAutoDrawable
down to GLU package; removed getGLU()/setGLU() routines. A GLU object
may now be instantiated via "new GLU()" at any point in the program.
When routines on it are called which require an OpenGL context, the
GLU implementation fetches the current GLContext and the GL object
from within it to do its work via the new public API
GLU.getCurrentGL(). This avoids needing to pass down a GL object
everywhere or to tie the GLU object to a particular GL object.
Restructured GLUT implementation similarly so GL and GLU objects do
not need to be passed to it as arguments any more. Restructured all
demos to conform to new APIs. Fixed bugs in GlueGen around new
functionality of being able to emit only an implementing class with no
associated interface. Deleted obsolete GLU-related .cfg files.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@135 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoDeleted some GLJPanel-convenience methods from GLDrawableFactory based
Kenneth Russel [Thu, 22 Sep 2005 04:42:14 +0000 (04:42 +0000)]
Deleted some GLJPanel-convenience methods from GLDrawableFactory based
on expert group feedback. Changed how default null GLCapabilities and
GLCapabilitiesChooser arguments are handled in GLCanvas, GLJPanel and
GLDrawableFactory. Cleaned up JRefract and DualContext demos slightly.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@134 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRenamed GLJPanel.isOGLPipelineEnabled() to
Kenneth Russel [Mon, 12 Sep 2005 15:55:14 +0000 (15:55 +0000)]
Renamed GLJPanel.isOGLPipelineEnabled() to
GLJPanel.shouldPreserveColorBufferIfTranslucent() and respecified it.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@130 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoMoved GLU-related classes into javax.media.opengl.glu package. Still
Kenneth Russel [Sun, 11 Sep 2005 19:07:57 +0000 (19:07 +0000)]
Moved GLU-related classes into javax.media.opengl.glu package. Still
need to break dependence from GLContext / GLAutoDrawable classes'
getGLU() method down into this new package; should make GLU a class
rather than an interface and probably make it instantiatable with a
target GL object in the constructor. Should also make GLU and GLUT
interfaces look similar (i.e., probably accept GL and GLU objects in
constructor of GLUT rather than taking them as arguments on each
method call). Ignored GLUnurbs data type from glue code generation.
Updated demos for new location of GLU. Fixed broken package of Version
class. Minor javadoc cleanups.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@129 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed longstanding typo (even in C headers) in naming of GLUtesselator;
Kenneth Russel [Sun, 11 Sep 2005 17:38:04 +0000 (17:38 +0000)]
Fixed longstanding typo (even in C headers) in naming of GLUtesselator;
now named GLUtessellator

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@128 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoInitial integration of JOGL with the Java2D OpenGL pipeline in the Sun JDK.
Kenneth Russel [Fri, 9 Sep 2005 09:05:33 +0000 (09:05 +0000)]
Initial integration of JOGL with the Java2D OpenGL pipeline in the Sun JDK.
GLJPanel has a new rendering path which captures the Java2D back buffer via
GLDrawableFactory.createExternalGLDrawable()/createExternalGLContext() and
creates a new context on it for performing JOGL rendering. The new path is
enabled by default in Mustang build 51 and later when the Java2D/OpenGL
pipeline is turned on via -Dsun.java2d.opengl=true, and yields huge speedups
relative to the previous pbuffer-based GLJPanel implementation. GLJPanel in
the new configuration is nearly as fast as the GLCanvas, and still provides
100% correct Swing integration. No public API changes were required to JOGL
in order to implement this integration with one exception in
GLJPanel.isOGLPipelineEnabled(): see below.

Issues still remain, such as the desire to run all (not just some) OpenGL
work on the Java2D-internal Queue Flusher Thread to maintain single-threaded
behavior of the library. Currently GLCanvas's OpenGL work is run on the EDT
while GLJPanel's and GLPbuffer's OpenGL work is run on the QFT. Significant
restructuring to the GLCanvas will be required to achieve this goal. There is
some lag of mouse events with demos which are more expensive to render which
needs to be investigated. It will not be possible to implement calling of
display() on other non-pbuffer GLAutoDrawables from within the
GLEventListener's display() callback in this model. There are other issues as
well.

GLJPanel falls back to using a pbuffer internally when the Java2D back
buffer's pixel format is not suitable for rendering the JOGL demos (for
example, the InfiniteShadowVolumes demo, which requires stencil bits).

Added GLJPanel.isOGLPipelineEnabled() which applications can use to decide
whether to clear the color buffer or leave prior Java2D rendering results in
place for non-opaque GLJPanels. The JGears demo has been modified to query
that flag to maintain the gradient behind it while rendering the gears
directly into the Java2D back buffer.

GLCanvas uses the pixel format specified by Java2D if one is already set. It
turns out that when the Java2D OpenGL pipeline is enabled, one is always set
by default even though no Java2D rendering is performed into it, because the
AWT clears the background of Canvases by default in certain situations. This
can be disabled (only globally, unfortunately) by specifying
-Dsun.awt.noerasebackground=true.

Fixed issues with HDR and HWShadowmapsSimple demos where they needed to pay
attention to the x and y coordinates passed down in the reshape callback in
order to set up the correct OpenGL viewport. Fixed minor shutdown-related
issues with demos using gleem's ManipManager.

Tested (on NVidia hardware only so far) on Windows and X11 platforms with
Mustang build 51.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@125 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRestructured GLJPanel to handle reshapes explicitly without needing to
Kenneth Russel [Fri, 9 Sep 2005 07:54:25 +0000 (07:54 +0000)]
Restructured GLJPanel to handle reshapes explicitly without needing to
put them on the AWT Event Queue thread via EventQueue.invokeLater().
Cleaned up single-threaded workaround code in GLCanvas. Fixed bug in
ManipManager.unregisterWindow().

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@124 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoInstantiated HDR demo's CgPipeline class reflectively to break
Kenneth Russel [Fri, 9 Sep 2005 07:35:27 +0000 (07:35 +0000)]
Instantiated HDR demo's CgPipeline class reflectively to break
compile-time dependence on Cg. Fixed bug in JNI name mangling in
GlueGen with object array arguments.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@123 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRefactored demos to mostly subclass common Demo superclass providing
Kenneth Russel [Fri, 9 Sep 2005 07:08:45 +0000 (07:08 +0000)]
Refactored demos to mostly subclass common Demo superclass providing
shutdown capabilities. Moved DemoListener to demos.common package.
Added ManipManager removal code to demos using manipulators or
ExaminerViewer to fix memory leak when run in JRefract harness. Added
workaround for another seeming memory leak when run under current JDK
1.6 due to java.awt.Component now being finalizable and keeping data
alive longer than previously. Made ManipManager.unregisterWindow more
lenient with respect to null or invalid arguments.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@122 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoCleaned up CR/LFs in JRefract demo
Kenneth Russel [Fri, 9 Sep 2005 06:47:50 +0000 (06:47 +0000)]
Cleaned up CR/LFs in JRefract demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@121 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded Vertex Buffer Object and Pixel Buffer Object variants of
Kenneth Russel [Sat, 3 Sep 2005 22:02:17 +0000 (22:02 +0000)]
Added Vertex Buffer Object and Pixel Buffer Object variants of
routines affected by these extensions. New variants take long as
argument instead of Buffer for void*. For these routines as well as
the original versions, must check whether VBO/PBO is active or
inactive. Added check to affected methods to guarantee they are not
called within glBegin/glEnd pairs (which in most, if not all, cases is
already a requirement) to avoid tracking OpenGL state manually. Added
new JavaPrologue and JavaEpilogue commands to JavaConfiguration with
optional signatures to differentiate overloaded methods. Added
BufferObjectKind command to GLConfiguration which builds on
JavaPrologue support. Deleted BufferUtils.bufferOffset() and
associated native code.

In order to reduce the number of extension routines, added
IgnoreExtension directives for all extensions folded into OpenGL 1.1,
1.2 and 1.3 specifications; this means that if the core OpenGL version
is less than 1.3 then these extensions are effectively unavailable.

Updated demos for both new VBO/PBO API variants as well as extensions
folded into core.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@120 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRenamed all files to intended destination packages for JSR-231. The
Kenneth Russel [Tue, 30 Aug 2005 08:25:24 +0000 (08:25 +0000)]
Renamed all files to intended destination packages for JSR-231. The
only package specified by the JSR is "javax.media.opengl". The utility
package com.sun.opengl.utils is Sun-specific and optional. The Cg
binding has been moved into com.sun.opengl.cg. Moved Animator and
FPSAnimator to com.sun.opengl.utils. Updated and tested demos with new
source code locations.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@118 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRestructured generation of MethodBindings and emitters to more closely
Kenneth Russel [Mon, 29 Aug 2005 07:03:58 +0000 (07:03 +0000)]
Restructured generation of MethodBindings and emitters to more closely
match desired new code generation style of mapping void* to Buffer and
to support non-direct Buffers. Removed expansion of void* to multiple
primitive array types. Primitive-type C pointers (such as int*) are
now exposed as IntBuffer and (optionally) int[], if NioDirectOnly has
not been specified. The int[] variant is a simple wrapper around the
indirect buffer implementation. If desired, expansion of void* to
other array types could be layered on this new support.

Rewrote and simplified expandMethodBinding and split up creation of
emitters into generatePublicEmitters and generatePrivateEmitters.
Deleted JavaMethodBindingImplEmitter and CMethodBindingImplEmitter and
folded their functionality into their superclasses, controlled under
flags, which makes it more straightforward to tweak a given emitter to
produce correct glue code. Restructured OpenGL-specific
JavaGLPAWrapperEmitter and CGLPAWrapperEmitter and how they are
created by the GLEmitter; these classes are now much simpler than
before.

Changed how data types are passed from MethodBindings to Emitters.
Generally only two MethodBindings will be created, one which maps
types like int* to IntBuffer and one which maps it to int[]. The
version taking Buffers will be the only one for which glue code will
be generated; the one taking int[] will call the native code for the
indirect buffer case for the one taking Buffers. Compound types
(representing C structs) and compound type arrays (represending arrays
of C structs) are no longer mapped to NIO ByteBuffers and arrays of
NIO ByteBuffers by the MethodBinding; erasure and lowering of types is
now handled by the Emitters, to preserve more type information during
the code generation process. It is unclear whether this is in the end
a simplification or just pushing code around, but it does help reduce
confusion over the number of MethodBindings floating around in the
system and what purpose they served.

Restructured cure JOGL code and demos to work with new APIs, in
particular new glTexImage*D, glDrawElements, and glReadPixels Buffer
arguments. Fixed performance problem in new Animator which occurred
with VertexArrayRange demo. Added new gluPickMatrix entry point to be
able to implement NIO variant in generated signatures.

Some further simplifications of the new code may be possible (i.e.,
some new flags in JavaMethodBindingEmitter and MethodBinding removed)
and it is possible more unused code remains to be deleted. As it
stands the new GL.java is significantly smaller than before, as all of
the expansions of void* to primitive arrays are gone, several areas of
GlueGen are easier to understand, and while some functionality has
been lost, the autogenerated APIs are basically in the final form
specified by JSR-231.

Tested with the JOGL demos on Windows and Linux.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@116 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoCleaned up imports in JRefract demo
Kenneth Russel [Wed, 17 Aug 2005 21:46:42 +0000 (21:46 +0000)]
Cleaned up imports in JRefract demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@115 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRevised JGears demo to add FPS counter and logos drawn with Java2D and
Kenneth Russel [Wed, 17 Aug 2005 21:41:40 +0000 (21:41 +0000)]
Revised JGears demo to add FPS counter and logos drawn with Java2D and
changed JRefract and JGearsFullscreen demos to use JGears instead.
Fixed bugs in fullscreen demos where workarounds were lost during last
refactoring; created new FullscreenWorkaround GLEventListener which
implements the workaround.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@114 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded dual-context test. Changed
Kenneth Russel [Mon, 15 Aug 2005 00:17:23 +0000 (00:17 +0000)]
Added dual-context test. Changed
WindowsOnscreenGLDrawable.swapBuffers() to lock the surface if
necessary. Need to test this on other platforms and make similar
change if necessary.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@113 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRestructured Animator to handle multiple GLAutoDrawables and to yield
Kenneth Russel [Sun, 14 Aug 2005 18:02:54 +0000 (18:02 +0000)]
Restructured Animator to handle multiple GLAutoDrawables and to yield
CPU within animation loop (configurable by overriding sync()). Added
FPSAnimator subclass.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@112 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoBroke another deadlock with VertexProgWarp demo in JRefract framework
Kenneth Russel [Sat, 6 Aug 2005 22:20:35 +0000 (22:20 +0000)]
Broke another deadlock with VertexProgWarp demo in JRefract framework

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@111 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded repaint() to GLAutoDrawable interface and used it in gleem
Kenneth Russel [Sat, 6 Aug 2005 22:14:12 +0000 (22:14 +0000)]
Added repaint() to GLAutoDrawable interface and used it in gleem
package to break deadlocks when another thread than AWT event queue
thread is involved in OpenGL rendering.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@110 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoMissed new DemoListener.repaint() in a few places
Kenneth Russel [Sat, 6 Aug 2005 20:15:13 +0000 (20:15 +0000)]
Missed new DemoListener.repaint() in a few places

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@109 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoCorrected HDR demo title
Kenneth Russel [Sat, 6 Aug 2005 20:10:09 +0000 (20:10 +0000)]
Corrected HDR demo title

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@108 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRefactored nearly all demos as GLEventListeners and imported most into
Kenneth Russel [Sat, 6 Aug 2005 19:59:40 +0000 (19:59 +0000)]
Refactored nearly all demos as GLEventListeners and imported most into
JRefract framework. Deleted duplicate Gears code in fullscreen demos.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@107 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRefactored Gears, VertexProgRefract and Water demos to be more
Kenneth Russel [Fri, 5 Aug 2005 06:55:06 +0000 (06:55 +0000)]
Refactored Gears, VertexProgRefract and Water demos to be more
modular. Started rewriting other demos like JGears and JRefract in
terms of others to share more code. Added Water demo to JRefract demo.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@106 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRefactored platform extensions out of the GL interface and
Kenneth Russel [Wed, 27 Jul 2005 00:30:07 +0000 (00:30 +0000)]
Refactored platform extensions out of the GL interface and
implementation and into their own objects according to the JSR-231
expert group's resolutions. Moved the interfaces declaring these
extensions into the platform-specific implementation directories and
added a loosely-specified GL.getPlatformGLExtensions(). This will
shrink the size of the platform-independent jar file considerably as
the implementing class for the public GL interface is now no longer
replicated for each platform. The build process is also simplified a
fair bit; more simplifications are possible.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@105 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoImplemented pbuffer instantiation support in GLDrawableFactory rather
Kenneth Russel [Mon, 18 Jul 2005 21:28:48 +0000 (21:28 +0000)]
Implemented pbuffer instantiation support in GLDrawableFactory rather
than GLCanvas on Windows. Restructured GLJPanel and jogl-demos to use
new APIs. Still needs to be ported to other platforms.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@104 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFurther context-related changes for the JSR-231 API. The GLContext
Kenneth Russel [Sun, 17 Jul 2005 06:13:30 +0000 (06:13 +0000)]
Further context-related changes for the JSR-231 API. The GLContext
implementations on all platforms have been split into orthogonal
GLDrawable and GLContext concepts. It is now possible to create more
than one GLContet per GLDrawable (though this has not been tested
yet). GLCanvas has been reimplemented in terms of
GLDrawableFactory.getGLDrawable(). More functionality has been moved
from GLDrawable to GLAutoDrawable. Reimplemented lazy sending of
reshape GLEventListener events in GLCanvas and GLJPanel and deleted
notion of deferred reshapes from GLDrawableHelper and elsewhere.
Sharing of textures and display lists is now expressed in terms of
GLContexts instead of GLDrawables. Still need to move pbuffer creation
into GLDrawableFactory from the onscreen GLContext implementations.
Added option to gleem ExaminerViewer to disable automatic redraws upon
mouse events and respecified more of gleem to work on GLAutoDrawables
rather than GLDrawables. Updated all JOGL demos to work with new APIs
and slightly different initialization sequences (in particular, for
pbuffers -- this will change with the addition of
GLDrawableFactory.createGLPbuffer()).

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@103 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoInitial set of context-related changes for the JSR-231 API. GLContext
Kenneth Russel [Sun, 10 Jul 2005 23:17:52 +0000 (23:17 +0000)]
Initial set of context-related changes for the JSR-231 API. GLContext
has been exposed in the public API. The GLEventListener callback
mechanism has been removed from the core GLContext implementation and
moved up to a higher level. GLAutoDrawable now contains the
GLEventListener-related methods, and the GLEventListener's methods now
receive a GLAutoDrawable as argument. All JOGL demos have been updated
for the new APIs. Many FIXMEs and much unimplemented functionality
remain. There is slightly different initialization behavior for the
demos containing pbuffers, and the deferring of reshape callbacks
needs to be rethought.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@100 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed Windows port after changes to GlueGen to include array offsets.
Kenneth Russel [Fri, 8 Jul 2005 16:03:14 +0000 (16:03 +0000)]
Fixed Windows port after changes to GlueGen to include array offsets.
Ported all demos to new API. Temporarily added back in GLU entry
points taking primitive arrays as the underlying APIs (in particular,
glTexImage2D) do not yet support non-direct Buffers. Changed C code
generation to only add in array offset if array is non-null. Fixed bug
in GLU tesselator demo's vertex callback.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@99 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoMerged with main trunk (tag JOGL_PRE_1_1_1)
Kenneth Russel [Thu, 7 Jul 2005 22:50:13 +0000 (22:50 +0000)]
Merged with main trunk (tag JOGL_PRE_1_1_1)

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@98 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoThis commit was manufactured by cvs2svn to create branch 'JSR-231'.
First Last [Thu, 16 Jun 2005 23:02:03 +0000 (23:02 +0000)]
This commit was manufactured by cvs2svn to create branch 'JSR-231'.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/branches/JSR-231@93 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded Java/JOGL port of NVidia HDR demo.
Kenneth Russel [Fri, 27 May 2005 19:45:51 +0000 (19:45 +0000)]
Added Java/JOGL port of NVidia HDR demo.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@80 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoEnabled sync-to-vertical-refresh for ProceduralTexturePhysics demo
Kenneth Russel [Tue, 24 May 2005 17:56:02 +0000 (17:56 +0000)]
Enabled sync-to-vertical-refresh for ProceduralTexturePhysics demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@79 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded constructor taking InputStream
Kenneth Russel [Mon, 23 May 2005 19:04:47 +0000 (19:04 +0000)]
Added constructor taking InputStream

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@78 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded PrintExt demo to print all GL extensions
Kenneth Russel [Thu, 19 May 2005 22:39:11 +0000 (22:39 +0000)]
Added PrintExt demo to print all GL extensions

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@77 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded demos.util.FileUtils to help with loading vertex and fragment
Kenneth Russel [Thu, 19 May 2005 02:37:01 +0000 (02:37 +0000)]
Added demos.util.FileUtils to help with loading vertex and fragment
programs

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@76 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoHandle -Djogl.cg=1 property in jogl-demos' build.xml as well
Kenneth Russel [Mon, 16 May 2005 22:25:28 +0000 (22:25 +0000)]
Handle -Djogl.cg=1 property in jogl-demos' build.xml as well

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@75 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded CgGL.cgCreateProgramFromStream and updated JOGL Cg demos to use
Kenneth Russel [Fri, 13 May 2005 23:57:50 +0000 (23:57 +0000)]
Added CgGL.cgCreateProgramFromStream and updated JOGL Cg demos to use
it so they can be run with Java Web Start.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@74 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpgraded Java Web Start files to 1.1 b11 and version string to 1.1 b12
Kenneth Russel [Wed, 11 May 2005 16:22:38 +0000 (16:22 +0000)]
Upgraded Java Web Start files to 1.1 b11 and version string to 1.1 b12

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@73 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed race condition in GLJPanel implementation and improved behavior
Kenneth Russel [Tue, 10 May 2005 16:23:35 +0000 (16:23 +0000)]
Fixed race condition in GLJPanel implementation and improved behavior
of JRefract demo on Linux

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@72 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed Issue 151: starting up the Animator before the GLJPanel has been shown result...
Kenneth Russel [Sat, 7 May 2005 00:45:24 +0000 (00:45 +0000)]
Fixed Issue 151: starting up the Animator before the GLJPanel has been shown result in an error

The root cause of this error was the fact that
WindowsPbufferGLContext.destroyImpl() uses WGL extensions to clean up
resources associated with the pbuffer. Because these extensions are in
the public WGL interface, they are wrapped by the DebugGL. However, an
OpenGL context is not current at the time these routines are called,
and it is illegal to call glGetError() at those points. The DebugGL
pipeline was implicitly calling glGetError() after each of those
calls, leading to the failure.

This bug unmasked a couple of others. The code in the DebugGL needed a
recursion count to make sure that glGetError() didn't get called in an
infinite loop. Also, as a side effect of the fix for Issue 160,
calling getGL() on the GLJPanel outside of GLEventListener.init() was
causing a NullPointerException to be thrown. The GLJPanel has been
fixed to return null in this case, and the specification of
GLDrawable.getGL() has been improved. In order to make the behavior
between the GLCanvas and GLJPanel similar, the GL object is now reset
in the GLDrawable each time the underlying OpenGL context is
recreated. This allows end users to set up e.g. the DebugGL
unconditionally in their GLEventListener.init() method. The JOGL demos
have been changed to reflect this.

The test case in the bug report will be updated with code similar to
the originally submitted test case (i.e., the Animator is started
early) but which now works.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@71 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded gl.setSwapInterval(0) call
Kenneth Russel [Thu, 5 May 2005 22:56:04 +0000 (22:56 +0000)]
Added gl.setSwapInterval(0) call

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@70 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixes for gleem Translate1, Translate2, and HandleBox JNLP files
Kenneth Russel [Tue, 3 May 2005 23:18:50 +0000 (23:18 +0000)]
Fixes for gleem Translate1, Translate2, and HandleBox JNLP files

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@69 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixes for gleem Translate1, Translate2, and HandleBox JNLP files
Kenneth Russel [Tue, 3 May 2005 22:57:01 +0000 (22:57 +0000)]
Fixes for gleem Translate1, Translate2, and HandleBox JNLP files

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@68 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded JNLP files for gleem Translate1, Translate2, and HandleBox tests
Kenneth Russel [Tue, 3 May 2005 22:51:20 +0000 (22:51 +0000)]
Added JNLP files for gleem Translate1, Translate2, and HandleBox tests

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@67 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed Issue 160: Resource leaks in GLJPanel
Kenneth Russel [Mon, 2 May 2005 06:06:08 +0000 (06:06 +0000)]
Fixed Issue 160: Resource leaks in GLJPanel

Added addNotify and removeNotify to GLJPanel which clean up the
associated OpenGL contexts and other resources. Extended JRefract demo
to stress GLJPanel creation and destruction. New code appears to be
correct. Can see resource leaks when the bunny is loaded over and
over, but believe these are probably due to allocation of large NIO
buffers that are not getting finalized promptly. Stressing the Gears
demo with both the pbuffer and software rendering paths shows that the
OpenGL resources are being reclaimed properly.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@66 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded call to GL.setSwapInterval(1) to make demo animate smoothly on
Kenneth Russel [Sun, 24 Apr 2005 00:29:32 +0000 (00:29 +0000)]
Added call to GL.setSwapInterval(1) to make demo animate smoothly on
all platforms

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@65 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed Issue 146: GLUT teapot
Kenneth Russel [Sat, 9 Apr 2005 23:51:44 +0000 (23:51 +0000)]
Fixed Issue 146: GLUT teapot

Applied patch from user tedmunds to provide both an old-style GLUT
teapot as well as one which fixes some problems with the teapot's
geometry and orientation. Updated HWShadowmapsSimple demo to use
glutSolidTeapot as originally intended.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@64 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed bug in demos pointed out by chrisDUPUIS on javagaming.org forums
Kenneth Russel [Mon, 28 Feb 2005 17:39:39 +0000 (17:39 +0000)]
Fixed bug in demos pointed out by chrisDUPUIS on javagaming.org forums
where we were creating multiple DebugGLs in particular in the
TestContextDestruction demo, which was the cause of the slowdown in
that demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@63 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpdated JOGL and jogl-demos webstart jars to 1.1 b10
Kenneth Russel [Mon, 28 Feb 2005 01:14:03 +0000 (01:14 +0000)]
Updated JOGL and jogl-demos webstart jars to 1.1 b10

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@62 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed problem in event-driven InfiniteShadowVolumes demo where
Kenneth Russel [Sun, 27 Feb 2005 21:53:30 +0000 (21:53 +0000)]
Fixed problem in event-driven InfiniteShadowVolumes demo where
animation wasn't occurring

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@61 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoChanged Gears and JGears demo to recommended style (to not cache the
Kenneth Russel [Thu, 24 Feb 2005 22:18:05 +0000 (22:18 +0000)]
Changed Gears and JGears demo to recommended style (to not cache the
GL object)

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@60 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded needed repaint() call after key events in demos where Animator
Kenneth Russel [Thu, 24 Feb 2005 00:35:49 +0000 (00:35 +0000)]
Added needed repaint() call after key events in demos where Animator
isn't being used any more

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@59 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRemoved unnecessary Animator from interactive HWShadowmapsSimple and
Kenneth Russel [Wed, 23 Feb 2005 23:00:59 +0000 (23:00 +0000)]
Removed unnecessary Animator from interactive HWShadowmapsSimple and
InfiniteShadowVolumes demos

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@58 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoTook out debugging code from VertexProgRefract demo
Kenneth Russel [Tue, 22 Feb 2005 23:12:28 +0000 (23:12 +0000)]
Took out debugging code from VertexProgRefract demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@57 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpdated Java Web Start jars to 1.1 b09
Kenneth Russel [Tue, 15 Feb 2005 23:21:41 +0000 (23:21 +0000)]
Updated Java Web Start jars to 1.1 b09

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@56 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoFixed problem in demos introduced in 1.1 b08 where windowClosing
Kenneth Russel [Mon, 14 Feb 2005 22:19:43 +0000 (22:19 +0000)]
Fixed problem in demos introduced in 1.1 b08 where windowClosing
events were not properly waiting for the Animator to stop.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@55 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded JRefractSingleThreaded JNLP file with
Kenneth Russel [Wed, 9 Feb 2005 03:37:41 +0000 (03:37 +0000)]
Added JRefractSingleThreaded JNLP file with
JOGL_SINGLE_THREADED_WORKAROUND specified

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@54 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded JCanyon thumbnail
Kenneth Russel [Tue, 8 Feb 2005 18:55:57 +0000 (18:55 +0000)]
Added JCanyon thumbnail

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@53 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded link to Grand Canyon demo
Kenneth Russel [Tue, 8 Feb 2005 18:55:05 +0000 (18:55 +0000)]
Added link to Grand Canyon demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@52 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoChanged certain http:// links to https://
Kenneth Russel [Tue, 8 Feb 2005 18:40:02 +0000 (18:40 +0000)]
Changed certain http:// links to https://

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@51 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpdated JOGL demos' jar files to 1.1 b08
Kenneth Russel [Mon, 7 Feb 2005 23:35:56 +0000 (23:35 +0000)]
Updated JOGL demos' jar files to 1.1 b08

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@50 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoCleaned up navbar and color scheme
Kenneth Russel [Mon, 7 Feb 2005 23:32:36 +0000 (23:32 +0000)]
Cleaned up navbar and color scheme

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@49 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded JRefract demo to jogl-demos web page
Kenneth Russel [Mon, 7 Feb 2005 23:25:39 +0000 (23:25 +0000)]
Added JRefract demo to jogl-demos web page

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@48 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded slight variation of VertexProgRefract demo which embeds the demo
Kenneth Russel [Fri, 4 Feb 2005 08:35:48 +0000 (08:35 +0000)]
Added slight variation of VertexProgRefract demo which embeds the demo
inside a JInternalFrame using the new hardware-accelerated GLJPanel.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@46 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpgraded JOGL and JOGL demo webstart jars to 1.1 b07.
Kenneth Russel [Sat, 20 Nov 2004 00:08:10 +0000 (00:08 +0000)]
Upgraded JOGL and JOGL demo webstart jars to 1.1 b07.
Upgraded version number to 1.1 b08.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@45 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoRemoved temporary debugging code
Kenneth Russel [Thu, 18 Nov 2004 23:09:29 +0000 (23:09 +0000)]
Removed temporary debugging code

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@44 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoAdded pbuffer support as stated requirement for
Kenneth Russel [Wed, 17 Nov 2004 22:08:52 +0000 (22:08 +0000)]
Added pbuffer support as stated requirement for
ProceduralTexturePhysics demo

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@43 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpdated documentation and web page for JOGL demos now that they have
Kenneth Russel [Wed, 17 Nov 2004 22:07:27 +0000 (22:07 +0000)]
Updated documentation and web page for JOGL demos now that they have
been to ARB-standard extensions.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@42 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoPorted ProceduralTexturePhysics demo to ARB_vertex_program and
Kenneth Russel [Wed, 17 Nov 2004 20:49:11 +0000 (20:49 +0000)]
Ported ProceduralTexturePhysics demo to ARB_vertex_program and
ARB_fragment_program from NV_vertex_program, NV_register_combiners and
NV_texture_shader for compatibility with all vendors' graphics cards.
Tested resulting demo on both NVidia and ATI cards. Framerate on
Quadro FX Go700 is close to original version after optimization of a
few of the fragment programs. Results are visually similar to (though
probably not identical to) the original version.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@41 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoPorted VertexProgRefract demo to ARB_fragment_program from NV_register_combiners
Kenneth Russel [Mon, 8 Nov 2004 03:11:00 +0000 (03:11 +0000)]
Ported VertexProgRefract demo to ARB_fragment_program from NV_register_combiners

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@40 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

12 years agoUpdated JOGL and JOGL demo webstart files to 1.1 b06
Kenneth Russel [Mon, 1 Nov 2004 20:49:39 +0000 (20:49 +0000)]
Updated JOGL and JOGL demo webstart files to 1.1 b06

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@39 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoUpdated Java Web Start jars to 1.1 b05
Kenneth Russel [Wed, 4 Aug 2004 23:06:33 +0000 (23:06 +0000)]
Updated Java Web Start jars to 1.1 b05

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@38 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoFixed bug in gleem's Plane constructor pointed out by Aron Bierbaum
Kenneth Russel [Fri, 23 Jul 2004 21:38:09 +0000 (21:38 +0000)]
Fixed bug in gleem's Plane constructor pointed out by Aron Bierbaum
<aronb@iastate.edu>

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@37 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoUpdated Java Web Start binaries for JOGL 1.1 beta 04
Kenneth Russel [Fri, 16 Jul 2004 20:07:03 +0000 (20:07 +0000)]
Updated Java Web Start binaries for JOGL 1.1 beta 04

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@36 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoFixed Issue 85: Weekly builds / source
Kenneth Russel [Fri, 16 Jul 2004 18:02:08 +0000 (18:02 +0000)]
Fixed Issue 85: Weekly builds / source

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@35 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoupdate note on ProceduralTexturePhysics demo to reflect support for pbuffers on Mac...
Gerard Ziemski [Sun, 20 Jun 2004 18:37:53 +0000 (18:37 +0000)]
update note on ProceduralTexturePhysics demo to reflect support for pbuffers on Mac OS X.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@34 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoupdate note on HWShadowmapsSimple demo to reflect support for pbuffers on Mac OS X.
Gerard Ziemski [Sun, 20 Jun 2004 18:34:09 +0000 (18:34 +0000)]
update note on HWShadowmapsSimple demo to reflect support for pbuffers on Mac OS X.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@33 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoThis putback attempts to address the following issues:
Kenneth Russel [Sat, 19 Jun 2004 01:58:41 +0000 (01:58 +0000)]
This putback attempts to address the following issues:

Issue 59: GLContext Leak
Issue 67: Java/Jogl app hangs some systems, not others, during reshape.
Issue 69: Error on window resize
Issue 89: Losing Backbuffer when Resizing/Moving a window

The primary change is to support handing off of the display()
implementation to the AWT event queue thread via a new class called
SingleThreadedWorkaround in the impl package. This was done to cause
the AWT's reshape code to execute on the same thread as all other
OpenGL rendering without changing the threading model (e.g., Animator
and the ability to manually call display()) visible to the end user.
This set of changes appears to work around the problems seen on ATI
cards with random corruption when resizing animating windows due to
multithreading bugs in the drivers. More testing by a larger community
will confirm this fix. Currently the workaround is enabled by default
on ATI cards.

A secondary but related change is to properly destroy the OpenGL
context when a heavyweight component is removed from its container.
In order to implement the above workaround, it was necessary to
override addNotify and removeNotify to properly track whether
GLCanvases were realized; at that point it was a fairly small step to
properly delete and recreate OpenGL contexts. The previous heuristics
which attempted to determine when a heavyweight had been realized have
been removed. A new demo, TestContextDestruction, exercises the new
functionality. It does still appear to exhibit resource leaks,
however; removing and re-adding the GLCanvas from its parent multiple
times causes the system to eventually slow down significantly. More
work is needed in this area.  However, the demo does now execute as
opposed to throwing an exception which was the previous behavior.

The current code has been tested on Windows on NVidia hardware with
all existing demos with the workaround both enabled and disabled, and
on ATI hardware with the existing compatible demos with the workaround
enabled. The new abstract method in GLContext, destroyImpl(), has been
implemented but not yet tested on X11 and Mac OS X.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@32 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoUpdated binaries for 1.1b03
Kenneth Russel [Thu, 29 Apr 2004 23:53:30 +0000 (23:53 +0000)]
Updated binaries for 1.1b03

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@31 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoUpdated precompiled binaries and some documentation for 1.1 b01
Kenneth Russel [Thu, 22 Apr 2004 06:30:29 +0000 (06:30 +0000)]
Updated precompiled binaries and some documentation for 1.1 b01

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@30 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoInitial support for multisample / full-scene antialiasing (FSAA);
Kenneth Russel [Tue, 13 Apr 2004 23:55:04 +0000 (23:55 +0000)]
Initial support for multisample / full-scene antialiasing (FSAA);
currently on Windows, X11 and other ports to follow

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@29 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoUpdated JOGL and JOGL-Demos web start binaries and made minor doc changes
Kenneth Russel [Mon, 12 Apr 2004 19:27:02 +0000 (19:27 +0000)]
Updated JOGL and JOGL-Demos web start binaries and made minor doc changes

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@28 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

13 years agoImplemented a per-thread GLContext stack, which gives a thread
Kenneth Russel [Tue, 4 Nov 2003 02:29:09 +0000 (02:29 +0000)]
Implemented a per-thread GLContext stack, which gives a thread
knowledge of the OpenGL contexts it has made current and allows a
GLDrawable to make its context current recursively as well as allowing
a GLEventListener to call another GLDrawable's display() method from
within its display(). This mechanism can be used fairly easily to
expose swapBuffers in the public API, as has been requested. Updated
the demos which had to explicitly call display() on more than one
drawable to use the Animator class and to call GLDrawable.display()
from within their GLEventListeners' display() methods. Updated
documentation. Fixed bugs in gleem's CameraParameters class.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@27 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoUpdated binaries with ARB_vertex_buffer_object support, latest Mac OS
Kenneth Russel [Sat, 6 Sep 2003 00:32:22 +0000 (00:32 +0000)]
Updated binaries with ARB_vertex_buffer_object support, latest Mac OS
X support, GLU tesselator API, etc. Added VertexBufferObject demo.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@26 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoAdded contribution from user GKW on community.java.net forums to fix
Kenneth Russel [Fri, 5 Sep 2003 18:15:16 +0000 (18:15 +0000)]
Added contribution from user GKW on community.java.net forums to fix
pixel format selection for GLJPanel on Win32 by using
ChoosePixelFormat rather than DefaultGLCapabilitiesChooser. Modified
dist targets to include Cg native libraries.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@25 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoGLU tesselator port by Pepijn Van Eeckhoudt and Nathan Parker Burg.
Kenneth Russel [Thu, 21 Aug 2003 19:09:45 +0000 (19:09 +0000)]
GLU tesselator port by Pepijn Van Eeckhoudt and Nathan Parker Burg.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@24 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoAdded SGI .rgb image reader. Fixed typos in javadoc.
Kenneth Russel [Fri, 15 Aug 2003 12:08:03 +0000 (12:08 +0000)]
Added SGI .rgb image reader. Fixed typos in javadoc.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@23 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoMade glBufferDataARB and glBufferSubDataARB non-NIOOnly. Added support
Kenneth Russel [Fri, 8 Aug 2003 20:44:26 +0000 (20:44 +0000)]
Made glBufferDataARB and glBufferSubDataARB non-NIOOnly. Added support
to VertexBufferObject demo for storing element indices in element
array buffer, though this didn't end up improving performance.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@22 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoFixed bug in toggling of VBO
Kenneth Russel [Fri, 8 Aug 2003 19:22:12 +0000 (19:22 +0000)]
Fixed bug in toggling of VBO

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@21 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoChanged glMapBufferARB's implementation to return the same ByteBuffer
Kenneth Russel [Thu, 7 Aug 2003 19:53:38 +0000 (19:53 +0000)]
Changed glMapBufferARB's implementation to return the same ByteBuffer
if the address and capacity of the underlying buffer object haven't
changed. This saves applications the cost of re-slicing the returned
buffer each frame and avoids allocation of one or more finalizable
objects per frame. Moved GlueGen's checking of whether a passed buffer
is direct up into Java from C to be able to handle buffers that wrap
the NULL pointer (needed for the "buffer offsets" used by
ARB_vertex_buffer_object). Ported the VertexArrayRange demo to
VertexBufferObject. Currently slower than VertexArrayRange but needs
to be updated to triangulate the geometry more efficiently (currently
the triangle strips are only 48 vertices long) and to move the indices
into fast RAM.

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@20 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoConverted all JNLP files to use https after java.net cutover to https only
Kenneth Russel [Mon, 4 Aug 2003 02:39:51 +0000 (02:39 +0000)]
Converted all JNLP files to use https after java.net cutover to https only

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@19 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoAttempted fix to jogl and Gears JNLP files after java.net transition to https
Kenneth Russel [Mon, 4 Aug 2003 02:36:32 +0000 (02:36 +0000)]
Attempted fix to jogl and Gears JNLP files after java.net transition to https

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@18 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

14 years agoAdded temporary Gears JNLP file
Kenneth Russel [Sat, 19 Jul 2003 08:16:08 +0000 (08:16 +0000)]
Added temporary Gears JNLP file

git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/jogl-demos/trunk@17 3298f667-5e0e-4b4a-8ed4-a3559d26a5f4

http://JogAmp.org git info: FAQ, tutorial and man pages.