summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Added note on usage of TextRenderer with TileRendererKenneth Russel2007-05-041-0/+9
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1231 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 296: TextureIO cube map support brokenKenneth Russel2007-04-212-36/+56
| | | | | | | | | | | | | Fixed code paths supporting cube maps. As a positive side-effect, the VertexProgRefract demo's cube map is now rendered completely correctly; inversion of the positive and negative Y images, and the negative Y scale factor on the texture matrix, are no longer needed, and the seams around the top image are gone. Fixed code relating to automatic mipmap generation in the presence of only GL_ARB_texture_rectangle and not GL_ARB_texture_non_power_of_two. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1212 232f8b59-042b-4e1e-8c03-345bb8c30851
* Re-fixed Issue 226: JOGL seg faulting on Solaris AMD64Kenneth Russel2007-04-211-17/+1
| | | | | | | | | | | The autogenerated GLX_JNI.c was not receiving a prototype for glXGetProcAddressARB and so was receiving the implicit one returning an int, which is obviously wrong on 64-bit architectures. Re-fixed this bug by providing a prototype; removed the workaround in X11GLDrawableFactory. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1211 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 226: JOGL seg faulting on Solaris AMD64Kenneth Russel2007-04-201-6/+6
| | | | | | | | | | | | The implementation of glXGetProcAddressARB on Solaris/AMD64 had a similar problem to that seen on Linux/AMD64 distributions: internally the return value is being cast to a 32-bit value and then sign-extended back to 64 bits, causing the high half of its function pointer return values to be lost. Worked around by using dlsym() for lookup on this OS as well as on Linux/AMD64. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1210 232f8b59-042b-4e1e-8c03-345bb8c30851
* Updated link to most recent archived JNLP to 1.1.0, Javadoc windowKenneth Russel2007-04-191-5/+4
| | | | | | | title, and version history in spec overview; minor Javadoc fixes git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1208 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed several more places in code with same error as in Issue 292Kenneth Russel2007-04-191-12/+12
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1203 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 292: gluScaleImage does not scale correctly Kenneth Russel2007-04-192-27/+27
| | | | | | | | Conversion scale factors for x and y dimensions were flipped. Also adjusted Image.fill_image() so code does not assert. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1202 232f8b59-042b-4e1e-8c03-345bb8c30851
* Reverted TextRenderer back to not tokenizing strings as that wasn't Kenneth Russel2007-04-181-6/+6
| | | | | | | producing identical rendering results git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1200 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 290: GLJPanel throws NullPointerExceptions with Java 2D/JOGL bridge Kenneth Russel2007-04-171-2/+10
| | | | | | | | | | Fixed NPEs in setAutoSwapBufferMode and swapBuffers if Java 2D / JOGL bridge is enabled. These methods are essentially no-ops on the GLJPanel anyway because of how the copying to the Swing rendering area (be it a BufferedImage or the Swing back buffer) is done. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1199 232f8b59-042b-4e1e-8c03-345bb8c30851
* More fully debugged tokenized rendering of strings and turned it on by Kenneth Russel2007-04-081-13/+19
| | | | | | | | default. Can be disabled by specifying -Djogl.TextRenderer.nosplit. Exposed getSpaceWidth() on request of emzic on javagaming.org forums. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1195 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added automatic mipmap generation support via GL_GENERATE_MIPMAP Kenneth Russel2007-04-083-22/+179
| | | | | | | | | | texture parameter to Texture class. Exposed this support up through the TextureRenderer and TextRenderer classes. Tested by temporarily enabling mipmap support for TextCube demo; no visual improvement, however, so left it disabled for now. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1194 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed problem pointed out by user operator on JOGL forum where chosen Kenneth Russel2007-04-071-1/+16
| | | | | | | | GLCapabilities on Windows was returning null for pixel formats using full-scene antialiasing git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1193 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added TextureIO.setTexRectEnabled() and isTexRectEnabled() based onKenneth Russel2007-04-032-1/+38
| | | | | | | | discussions with Chris Campbell of the Java 2D team, and changed Texture implementation to respect it git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1190 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added a markDirty() method to TextureRenderer and removed the sync() Kenneth Russel2007-03-273-25/+62
| | | | | | | | | | | method. markDirty() may be called at an arbitrary point (in particular, when no OpenGL context is current) and the union of the dirty regions is automatically synced with the underlying texture during the next getTexture() operation, at which point the dirty region is cleared. Adjusted Overlay and TextRenderer classes. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1182 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added Texture.getAspectRatio().Kenneth Russel2007-03-211-0/+13
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1177 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 274: GLException when GLJPanel (initially not visible) is made ↵Kenneth Russel2007-03-211-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | visible/showing Investigation revealed that the symptom was similar to what happens when one tries to create a new OpenGL context against an invalid HDC on Windows. Discussion with Chris Campbell from the Java 2D team indicated that in situations where the Java 2D OpenGL pipeline is using Frame Buffer Objects for its rendering, it is possible that its internal OpenGL context can be left current to the on-screen drawable, and it only has a valid device context for the brief period of time when its OpenGL context was being made current. This means that by the time JOGL's code got a chance to run, it did not have a valid HDC and therefore could not create its OpenGL context against it. The workaround, suggested by Chris, is to forcibly make the Java 2D context current against its internal "scratch" pbuffer, which can be done with the internal invokeWithOGLSharedContextCurrent method. Added this workaround and verified it fixes the problem with the user's test case. This issue will be fixed in a forthcoming Java SE 6 update release, hopefully 6u2. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1176 232f8b59-042b-4e1e-8c03-345bb8c30851
* Simplified math in last putbackKenneth Russel2007-03-161-2/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1171 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 287: TextRenderer rendering artifacts Kenneth Russel2007-03-161-3/+17
| | | | | | | | | | Stress testing uncovered that when neither GL_ARB_texture_non_power_of_two or GL_ARB_texture_rectangle were available, the Texture class was returning incorrect texture coordinates for textures which needed to be flipped vertically. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1170 232f8b59-042b-4e1e-8c03-345bb8c30851
* Made disabling of the depth test optional in TextRenderer and Kenneth Russel2007-02-272-12/+63
| | | | | | | | TextureRenderer's orthographic rendering methods based on feedback from Dave Collins from NASA World Wind project git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1160 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 281: FileUtil doc enhancement Kenneth Russel2007-02-271-4/+12
| | | | | | | Improved documentation as suggested. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1159 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 277: Documentation enhancement Kenneth Russel2007-02-271-36/+66
| | | | | | | | Added text to Screenshot class's methods indicating which read buffer is used. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1157 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 278: Fatal error when rendering text Kenneth Russel2007-02-272-1/+42
| | | | | | | | | Added code to restore current text drawing color when backing store is resized. Fixed NullPointerException in RectanglePacker during deletion if no backing store was allocated. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1156 232f8b59-042b-4e1e-8c03-345bb8c30851
* On advice from Chris Campbell, forced TYPE_INT_ARGB and Kenneth Russel2007-02-271-3/+12
| | | | | | | | | | TYPE_4BYTE_ABGR images down custom code path in order to obey general invariant that image data sent down to OpenGL has premultiplied alpha. Fixed bug in handling of TYPE_INT_ARGB images in custom image conversion. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1155 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed issue with parsing of OpenGL version strings pointed out byKenneth Russel2007-02-271-5/+6
| | | | | | | TimLambert on javagaming.org forum git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1154 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 276: Bug in handling of RGB-like custom BufferedImages in TextureIO Kenneth Russel2007-02-221-1/+1
| | | | | | | | | Code path handling RGB-like TYPE_CUSTOM BufferedImages in the TextureIO classes should have been computing the row length by dividing the scanline stride by 3, not 4. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1150 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 275: Rendering bugs in TextRenderer Kenneth Russel2007-02-221-1/+38
| | | | | | | | | | | | | Fixed problem where during resizing of backing store for TextRenderer we were neglecting to unbind the old texture and bind the new one. This caused attempts to render with an invalid texture, which was probably the cause of crashes and definitely the cause of rendering artifacts. Fixed by calling endRendering() / beginRendering() appropriately on the underlying TextureRenderer during resizing of the backing store of the TextRenderer. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1148 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 273: class DDSImage don't support cubemap textures Kenneth Russel2007-02-211-16/+144
| | | | | | | Incorporated suggested fix from java.net user bandures. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1146 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 272: Move setColor method from TextRenderer up to TextureRenderer Kenneth Russel2007-02-202-28/+64
| | | | | | | | Moved setColor() implementation from TextRenderer to TextureRenderer and reimplemented TextRenderer's methods in terms of it. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1143 232f8b59-042b-4e1e-8c03-345bb8c30851
* Addendum to fix for Issue 271: wglGetPixelFormatAttribivARB() fails forcing ↵Kenneth Russel2007-02-201-1/+1
| | | | | | | | | | software OpenGL Conditionalized one more debug-only use of a multisample-related query. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1142 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 271: wglGetPixelFormatAttribivARB() fails forcing software OpenGL Kenneth Russel2007-02-201-4/+8
| | | | | | | | | | New code added for support of getChosenGLCapabilities() was causing errors described in bug report. Conditionalized querying of multisample properties based on availability of WGL_ARB_multisample extension. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1141 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added handling and documentation for jogl.silent.noddraw.check and Kenneth Russel2007-02-141-26/+61
| | | | | | | | | jogl.disable.noddraw.check applet parameters on request of NASCAR RaceView team at Turner Broadcasting. Forced inclusion of current JRE's version in version set for better robustness. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1132 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added RenderDelegate mechanism to TextRenderer to provide more control Kenneth Russel2007-02-111-19/+103
| | | | | | | | where desired over the rendered text bitmap. Added CustomText demo to demonstrate its usage. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1128 232f8b59-042b-4e1e-8c03-345bb8c30851
* Javadoc fixKenneth Russel2007-02-111-2/+3
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1127 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added setColor(Color) convenience methodKenneth Russel2007-02-111-0/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1126 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 267: class DDSImage return incorrect mipmap level data. Kenneth Russel2007-01-261-2/+2
| | | | | | | Applied recommended fix from submitter. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1107 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added GL_TEXTURE_BIT and GL_COLOR_BUFFER_BIT to set of attributes Kenneth Russel2007-01-251-1/+2
| | | | | | | | pushed / popped by TextureRenderer on suggestion of Tom Gaskins and Chris Campbell git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1104 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed incorrect comment about alpha bits pointed out by Chris CampbellKenneth Russel2007-01-251-3/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1103 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 264: SecurityException in JOGLAppletLauncher if JOAL not present Kenneth Russel2007-01-221-1/+5
| | | | | | | | Made JOGLAppletLauncher more robust to exceptions thrown from Class.forName() looking up AL.class. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1098 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 263: JOGL applets slow in Mozilla / FirefoxKenneth Russel2007-01-221-0/+9
| | | | | | | | | Added documentation to JOGLAppletLauncher indicating that Talkback agent is responsible for slowdown of JOGL-based applets and provided instructions on how to turn it off. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1097 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 262: DRIHack problems with ATI and possibly other driversKenneth Russel2007-01-211-7/+2
| | | | | | | | | | | Added support to GlueGen's NativeLibrary class for relative library path names which do not require expansion; for example, "libGL.so.1". Changed the DRIHack to first attempt to open libGL.so.1 instead of "GL", which expanded to "libGL.so". For some reason, this causes ATI's drivers to be picked up properly. Tested with various JOGL demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1093 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added 3D rendering methods to TextureRenderer and TextRenderer on Kenneth Russel2007-01-202-90/+230
| | | | | | | | | | | | request of several people on javagaming.org forums. Refactored existing 2D rendering support in these classes in terms of the new 3D methods. Wrote new TextCube demo illustrating how to render 2D text in 3D using the TextRenderer. Factored out FPS counter rendering into new FPSCounter utility class and updated TestTextRenderer and FlyingText demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1092 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 260: "GLException: Surface already locked" after failed makeCurrent Kenneth Russel2007-01-173-12/+21
| | | | | | | | | Added checking for thrown run-time exceptions to on-screen GLContext makeCurrent() implementations on all three major supported platforms; now unlocks the underlying GLDrawable if an exception is thrown. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1088 232f8b59-042b-4e1e-8c03-345bb8c30851
* Robustness improvements to TextRenderer and underlying RectanglePacker. Kenneth Russel2007-01-135-84/+450
| | | | | | | | | | | | | | | Added ability to specify a maximum size to which the RectanglePacker can expand. Added preExpand method to BackingStoreManager to support early eviction of unused entries instead of always expanding the backing store, and additionFailed method used when the backing store can not expand further. Added more robust free list coalescing to Level. Added support for shrinking of backing store and for eager compaction when there is a lot of vertical dead space. Added TextFlow demo which shows how to do dynamic layout of text and which acts as a stress test for the TextRenderer. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1083 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added -Djogl.drihack.disable for manual disabling of DRI hackKenneth Russel2007-01-111-0/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1080 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 259: need a copy context Kenneth Russel2007-01-075-0/+83
| | | | | | | | | | Added and specified GLContext.copy() and supplied implementations on Windows, X11 and Mac OS X platforms. New code is untested at this time. May need to make subsequent changes on X11 and Mac platforms where new code has not been compiled yet. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1075 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added new FlyingText demo to illustrate more advanced usage of the Kenneth Russel2007-01-072-15/+34
| | | | | | | | | | | TextRenderer class; displays dynamically rotated, translated and colored text. Changed how setSmoothing() is handled by the TextureRenderer and stopped disabling smoothing in the TextRenderer. For the time being, not exposing this flag in that class to keep the API simple. Changed TextRenderer to also push/pop the texture matrix. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1073 232f8b59-042b-4e1e-8c03-345bb8c30851
* With help from Chris Campbell, fixed incredibly stupid bug on my part Kenneth Russel2007-01-063-1/+47
| | | | | | | | | | | | | | | | where the new Java 2D TextureRenderer was destroying and re-creating the OpenGL texture every frame. This was why the Java 2D Overlay class was so expensive, and why the TextRenderer wasn't as fast as it seemed it should be. Fixed bugs in all of the Java 2D demos which were covered up by this implicit sync, as well as in the TextRenderer class itself where it was missing a key sync operation. Added code to the Texture.updateSubImage() implementation to clip the incoming rectangle to the bounds of the input data and texture, to keep OpenGL from dropping almost-valid updates on the floor. Ran all of the Java 2D integration demos to verify these fixes. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1071 232f8b59-042b-4e1e-8c03-345bb8c30851
* With extensive help from Phil Race and Chris Campbell from the Java 2D Kenneth Russel2007-01-049-5/+1476
| | | | | | | | | | | | | | | | | | | | | | team, added a TextRenderer class which enables high-performance rendering of bitmapped Java 2D fonts, with full Unicode support, into arbitrary OpenGL drawables using a simple API. Builds on top of the TextureRenderer class and its associated functionality; added createAlphaOnlyRenderer() and other methods to enable the TextRenderer. Caches rendering results on a string-by-string basis in an OpenGL texture using a fully automatic least-recently-used algorithm for good efficiency when rendering the same string or strings multiple times. Uses a rectangle packing algorithm, currently housed in com.sun.opengl.impl.packrect, for managing the positions of cached strings on a larger OpenGL texture to avoid OpenGL pipeline state changes. Added a TestTextRenderer demo which simply adds a moving text string and frames-per-second counter to the Gears demo; more sophisticated examples to come. (Some commented-out debugging code is being temporarily left in the new demo, to be removed in the next checkin, in order to have it in the version history.) git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1067 232f8b59-042b-4e1e-8c03-345bb8c30851
* Moved J2DTextureRenderer and J2DOverlay into their own sub-package and Kenneth Russel2007-01-042-11/+11
| | | | | | | | | dropped the prefixes on the suggestion of Chris Campbell. No other changes to these classes. Added com.sun.opengl.util.j2d to the javadoc generation. Updated demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1066 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added getImage() and simpler drawOrthoRect() helper method on Kenneth Russel2007-01-041-0/+25
| | | | | | | suggestion of Chris Campbell git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1065 232f8b59-042b-4e1e-8c03-345bb8c30851