UnstableChanges

Summary

  1. Fix javadoc package property, use comma as separator (dropped newt and (commit: 00cb1f6) (details)
  2. GLStateTracker: Avoid private access wrapper, reuse fetched (commit: 215cbe5) (details)
  3. Scripts: Bump to java 1.7.0_67 and apache-ant 1.9.4 (commit: e3226d1) (details)
  4. Fix commit b5910f18f0b82a8a1f6f6252dc19971d5e487f39 for toString(): Call (commit: c28b5eb) (details)
  5. graph/font: Use 'pixelSize' var-name, remove redundancies (commit: 93862d1) (details)
  6. Graph/Text: Prepare unit tests for font rendering validation (WIP) (commit: fc6df2f) (details)
  7. Graph/Text: Prepare unit tests for font rendering validation (WIP) (commit: 9c9d0cf) (details)
  8. HowToBuild: Bump requirements: ant >= 1.9.0, git >= 1.7.10 (commit: 1882b65) (details)
  9. HowToBuild: Revert required git version back to 1.6.0 (from 1.7.10, (commit: 8ca6a47) (details)
  10. TestVersionSemantics: BACKWARD_COMPATIBLE_USER current vs 2.2.0 (commit: 262592b) (details)
  11. glsl.sdk.CompileShader: Use IOUtil.StreamMonitor (commit: 28ad09d) (details)
  12. GLSharedContextSetter: Fix API doc and all html references (fix URL and (commit: 4dfa5e3) (details)
  13. Bug 1054: Cleanup GLContext 'lock' and 'drawable' usage, perform (commit: ad79bd0) (details)
  14. Bug 1054: Cleanup GLContext: 'lock' -> 'contextLock' (commit: dfb9ed4) (details)
  15. Bug 1054:  GLContext: makeCurrent() needs a null-check of [mutable] (commit: 11347ad) (details)
  16. Bug 1055 - Access and query shared master GLContext in a deterministic (commit: 011e13e) (details)
  17. Bug 1054: Revert dfb9ed47ac6d8e85f6ae5fe166e7a6e28ca8ff83: Cannot change (commit: da16dfd) (details)
  18. Refine test cases for synchronous GLAutoDrawable display, swap-buffer (commit: 701e1e8) (details)
  19. Refine test cases for synchronous GLAutoDrawable display, swap-buffer (commit: 33072c5) (details)
  20. FBObject Cleanup: Add comments about maxSamples > 0 implies (commit: 7dbd7fc) (details)
  21. TestGLReadBuffer01GLJPanelAWT: Add keyFrame-wait after init (commit: 359ecbd) (details)
  22. Bug 1020 - First MSAA FBO frame on a mac osx nvidia card not antialiased (commit: ab07820) (details)
  23. TestSharedContextNewtAWTBug523: Fix junit usage .. (commit: 850cbdb) (details)
Commit 00cb1f67423fa2c23f55cc616806f0779f70ac89 by Sven Gothel
Fix javadoc package property, use comma as separator (dropped newt and oculusvr apidoc)
(commit: 00cb1f6)
The file was modifiedmake/build.xml (diff)
Commit 215cbe50aaf22b3914fbfa4f3869dde4b7e0622c by Sven Gothel
GLStateTracker: Avoid private access wrapper, reuse fetched pixelStateMap
(commit: 215cbe5)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLStateTracker.java (diff)
Commit e3226d16fc147dcad77e172538d09b62eee7e6d9 by Sven Gothel
Scripts: Bump to java 1.7.0_67 and apache-ant 1.9.4
(commit: e3226d1)
The file was modifiedmake/scripts/tests-javaws-x64.bat (diff)
The file was modifiedmake/scripts/tests-x64.bat (diff)
The file was modifiedmake/scripts/tests-x64-dbg.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.win64.bat (diff)
The file was modifiedmake/scripts/tests-x32-dbg.bat (diff)
The file was modifiedmake/scripts/tests-x32.bat (diff)
The file was modifiedmake/scripts/tests-win.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.win32.bat (diff)
Commit c28b5eb2bb3db29dcdc51b391a4d9b236eb11885 by Sven Gothel
Fix commit b5910f18f0b82a8a1f6f6252dc19971d5e487f39 for toString(): Call super.hashCode(), due to InternalError("hashCode not designed")
(commit: c28b5eb)
The file was modifiedsrc/jogl/classes/com/jogamp/graph/curve/OutlineShape.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/graph/geom/Outline.java (diff)
Commit 93862d19f0950e4ae5ccadb2613aee173f111b3a by Sven Gothel
graph/font: Use 'pixelSize' var-name, remove redundancies
(commit: 93862d1)
The file was modifiedsrc/jogl/classes/jogamp/graph/font/typecast/TypecastGlyph.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/graph/font/typecast/ot/OTGlyph.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/graph/font/Font.java (diff)
Commit fc6df2f838388049c6aa6b2cacf9e76dacdb82b2 by Sven Gothel
Graph/Text: Prepare unit tests for font rendering validation (WIP)
(commit: fc6df2f)
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSans.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWTBugXXXX.java
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSerifBoldItalic.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeMonoBold.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSerifItalic.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSansBoldOblique.ttf
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeMono.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeMonoBoldOblique.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSerifBold.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/FontSet01.java
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSerif.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeMonoOblique.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/TestFontsNEWT00.java
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSansOblique.ttf
The file was addedsrc/test/com/jogamp/opengl/test/junit/graph/fonts/freefont/FreeSansBold.ttf
Commit 9c9d0cf211f7c2b65a3d4ee09e9529c28f673fa7 by Sven Gothel
Graph/Text: Prepare unit tests for font rendering validation (WIP)
(commit: 9c9d0cf)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java (diff)
Commit 1882b6551326e583c311b6b169be2222125df4d9 by Sven Gothel
HowToBuild: Bump requirements: ant >= 1.9.0, git >= 1.7.10

- ant >= 1.9.0
- Due to java8 build support

- git >= 1.7.10
- Due to gluegen's new git query of HEAD branch and sha1-tip
(commit: 1882b65)
The file was modifieddoc/HowToBuild.html (diff)
Commit 8ca6a47b5cff613a40e6fb3dfef48f16b4b6995d by Sven Gothel
HowToBuild: Revert required git version back to 1.6.0 (from 1.7.10, commit 1882b6551326e583c311b6b169be2222125df4d9)

git version 1.7.10 is not available on certail 'long life' / LTS systems,
we have to reschedule the gluegen patch for a later time.
(commit: 8ca6a47)
The file was modifieddoc/HowToBuild.html (diff)
Commit 262592bc9d692fb4fa5f79eab7994998151b3ed1 by Sven Gothel
TestVersionSemantics: BACKWARD_COMPATIBLE_USER current vs 2.2.0
(commit: 262592b)
The file was modifiedmake/scripts/tests-x64.sh (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestVersionSemanticsNOUI.java (diff)
The file was modifiedmake/scripts/make.jogl.all.linux-x86_64.sh (diff)
The file was addedmake/lib/v2.2.0/jogl-all.jar
Commit 28ad09d75c7565983fb43e83da6e1726f92677db by Sven Gothel
glsl.sdk.CompileShader: Use IOUtil.StreamMonitor
(commit: 28ad09d)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java (diff)
Commit 4dfa5e34b5bbfc74dd9ca6ead89b23d12e7a1b01 by Sven Gothel
GLSharedContextSetter: Fix API doc and all html references (fix URL and complete notes in all implementations)
(commit: 4dfa5e3)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLDrawable.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLOffscreenAutoDrawable.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLSharedContextSetter.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/GLAutoDrawableDelegate.java (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff)
Commit ad79bd072b600a3f2416cc6f0c61e2925000069d by Sven Gothel
Bug 1054: Cleanup GLContext 'lock' and 'drawable' usage, perform drawable null check in constructor.

This patch merely cleans up 'lock' and 'drawable' usage,
while fixing:
  - constructor: Add drawable null check -> IllegalArgumentException
  - setGLReadDrawable: Proper precondition checks
  - setGLDrawable: Proper precondition checks

Affected methods of mutable drawable for which we have to consider locking:
  - setGLReadDrawable
  - setGLDrawable
  - release
  - destroy
  - makeCurrent
(commit: ad79bd0)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit dfb9ed47ac6d8e85f6ae5fe166e7a6e28ca8ff83 by Sven Gothel
Bug 1054: Cleanup GLContext: 'lock' -> 'contextLock'
(commit: dfb9ed4)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLContext.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit 11347ad39059836f3e2a4f1fc592dc1e3fab6a09 by Sven Gothel
Bug 1054:  GLContext: makeCurrent() needs a null-check of [mutable] drawable; Review null checks and synchronization/locking.

'drawable' field of GLContextImpl is mutable via setGLDrawable(..),
which requires high-level locking as documented.

The required high-level locking allows us to _not_ add special
synchronization to this field (and drawableRead).

A simple null-check in makeCurrent() shall be sufficient,
plus ensuring mentioned high-level locking is applied.

GLContextImpl 'drawable' and 'drawableRead' synchronization:
  - commit ad79bd072b600a3f2416cc6f0c61e2925000069d check of null drawable is sufficient
  - Add GLAutoDrawable upstream-lock locking to:
    - AWT GLCanvas setupPrint/releasePrint
    - AWT GLJPanel (was missing)

Misc:
  - validate shared-context native-surface locking, throw exception if not successful
  - pixelDataEvaluated does not need to be synchronized, since it's being called while context is current, locking
  - GLDrawableHelper.recreateGLDrawable(..): Remove redundant glFinish() call
(commit: 11347ad)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLDrawableHelper.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLContext.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit 011e13e22fd52d2e82697ffee6b4c9ca8f3d549a by Sven Gothel
Bug 1055 - Access and query shared master GLContext in a deterministic fashion ; Don't use arbitrary shared context as 'master'.

GLContext* passes the shared-master to GLContextShareSet,
which only creates a sets of shared contexts
without differentiating the master context.

GLContext*'s shared-slave attempts to lock
the realized shared-master's surface at creation.

Currently only an arbitrary shared context is selected
due to the missing 'master' identity.
The arbitrary shared context's surface is locked
and its shared context handle used to create the slave context.

Lacking of using the user given shared-master
can lead to deadlock situations - and locking a 'wrong' surface.

+++

The patch:

  - Allows query the user given shared-master!

  - Use the user given shared-master for locking and it's
    context handle for the slave's creation.

  - The shared-context mapping maps each shared-master
    to a shared-slave within one shared-context-set,
    allowing deterministic and individual shared-master queries.
(commit: 011e13e)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2AWT3b.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/MiscUtils.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2SWT3.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT3.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextShareSet.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT2.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT1.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLContext.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES1NEWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2AWT3.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT0.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT4.java
Commit da16dfd39cc17687808308c386d64f6206027c00 by Sven Gothel
Bug 1054: Revert dfb9ed47ac6d8e85f6ae5fe166e7a6e28ca8ff83: Cannot change protected field name w/o breaking backward compatibility
(commit: da16dfd)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLContext.java (diff)
Commit 701e1e8da5e7d31ffdf166ead77250e4d007f86f by Sven Gothel
Refine test cases for synchronous GLAutoDrawable display, swap-buffer and read-pixels (non-MSAA and MSAA) Bugs: 841, 975 and 1020
(commit: 701e1e8)
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00BaseAWT.java
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/MultisampleDemoES2.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLCanvasAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java (diff)
Commit 33072c51e7bd1270477f7d4abe817f3565e10546 by Sven Gothel
Refine test cases for synchronous GLAutoDrawable display, swap-buffer and read-pixels (non-MSAA and MSAA) Bugs: 841, 975 and 1020

.. add Platform and GL info !
(commit: 33072c5)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLCanvasAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLWindowNEWT.java (diff)
Commit 7dbd7fcf9c5e5d6f48ee22f0e327902eb78614d2 by Sven Gothel
FBObject Cleanup: Add comments about maxSamples > 0 implies fullFBOSupport; bind(): Set dedicated read/write if fullFBOSupport

- Add comments about maxSamples > 0 implies fullFBOSupport

- bind(): Set dedicated read/write if fullFBOSupport
  as done in syncSamplingSink() and unbind()
(commit: 7dbd7fc)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/FBObject.java (diff)
Commit 359ecbdd9cefaabeb1050be706ddeb020e5b6c37 by Sven Gothel
TestGLReadBuffer01GLJPanelAWT: Add keyFrame-wait after init
(commit: 359ecbd)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLReadBuffer01GLJPanelAWT.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
Commit ab07820e346f23aabc9d9364b7205017422cfaed by Sven Gothel
Bug 1020 - First MSAA FBO frame on a mac osx nvidia card not antialiased

OSX/Nvidia's FBO needs to be cleared before blitting,
otherwise first MSAA frame lacks antialiasing.

GLFBODrawableImpl.initialize(..) can clear
GL.GL_COLOR_BUFFER_BIT and GL.GL_DEPTH_BUFFER_BIT, if used.

FBObject cannot clear the buffer(s) due to it's low-level API,
i.e. it cannot know when the first bind occurs _after_ user
completed FBO setup (attaching buffers).

Hence plain FBObject usage required manual injection
of glClear(..) after setup as demonstrated in GLJPanel.

We may need to elaborate in this case,
i.e. add an FBObject API entry like 'fbo.postInitNotify()'.
(commit: ab07820)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java (diff)
Commit 850cbdb9213c0c7b530f81e69b49fcc47c37b4d0 by Sven Gothel
TestSharedContextNewtAWTBug523: Fix junit usage ..
(commit: 850cbdb)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextNewtAWTBug523.java (diff)