Version 3.1.9

William Bittle // Mar 29, 2014 6:39:14 PM

This release of dyn4j includes some major bug fixes for the SweepLine class and other related convex decomposition classes.  It also includes some enhancements to the World.detect methods.  See the change detail in the release notes.

A new release of the Sandbox was published for this release for a small bug fix.

Call for Compliance of Java(tm) Technology with the 4 Freedoms of Software

Sven // Mar 7, 2013 3:31:49 PM

While being asked about JavaFX and whatever other Oracle, Google or
whatever technology, all I can say: I don’t really care – as long it’s free
and complies w/ the 4 freedoms of software.

Lately Oracle even made the proposal JEP 178: Statically-Linked JNI Libraries,
allowing Java applications using JNI within a statically deployed runtime. Read: May work on Apple’s iOS.

IMHO the real issue of being able to deploy ‘Java Tech’ on any platform including mobile/embedded devices is not whether Oracle allows static JNI linkage,
but to allow deploying a custom JRE in the first place.
It is Oracle herself who restricts her patent grant to non embedded devices, hence ‘Java Tech’ does not comply w/ the 4 freedoms of software, see:

Call for Compliance of Java Technology with the 4 Freedoms of Software

IMHO the most advancement Oracle could make to ‘Java Tech’ would be
a general patent and license grant, so you actually would be able to
legally use and deploy your Java’ish builds anywhere and be free
without the hassles and fears of a multimillion dollar battle.
Let it be a build based on OpenJDK, Apache Harmony, DalvikVM .. or whatever 🙂

Just my 2 cents ..

[Java is a registered trademark of Oracle, Incl.]

JogAmp @ SIGGRAPH 2012

Sven // Jun 20, 2012 11:37:27 PM

Dear Team & Users,

it’s crunchtime ..

JogAmp will have it’s annual BOF @ SIGGRAPH 2012.

If you are around, we hope you have a chance to to attend
and meet w/ us.

Afterwards we may like to dine & wine together, if possible.

JogAmp: 2D/3D & Multimedia Across Devices

Tuesday, 7 August 3:30 pm - 5:00 pm

JogAmp provides OpenGL and OpenCL across devices using Java. Showcasing font,
UI and video, high-level API utilization (Ardor3D, Java3D, etc.), and
applications on Android, Linux, Window, OSX, and Solaris.

JogAmp Community

To document our planning, we have set-up
Bug 530
Wiki Page


If you have contributions for our BOF,
please don’t be shy and come forward.

We would like you to present it.
If you cannot attend personally, you can have us showing your content.
You will be referenced of course.


Please reply to in forum.

Cheers, Sven

JogAmp Release v2.0-rc9 / Wiki ..

Sven // Jun 20, 2012 10:05:30 PM

Today the v2.0-rc9 release has been notified w/ details.

Mostly contains stabilization and bug fixes no new features.

Android ARM-v7a APKs are included this time,
next market update is targeted w/ the next release.

… comment on the forum.

Besides, some wiki pages got updated.

Jogl/JogAmp Status Update ..

Sven // Apr 19, 2012 9:26:50 PM

Last weeks the new video streaming feature GLMediaPlayer
was added for Android and machines w/ Libav/FFmpeg pre-installed.

We produced a presentation video showcasing JogAmp’s objectives:

Jogl/JogAmp on the Web, Desktop and Mobile 2012

RC6 is now underway, I still have to add some supplied patches and walk through the buglist though.
However, this time I have to complete this task until tomorrow regardless whether I could complete the bug walk or not.

Cheers, Sven

Jogl/JogAmp RC6 Beta / Linux Armv7 Builds

Sven // Feb 28, 2012 3:05:42 AM

Besides adding proper Mac OS X support (10.5.8 – 10.7.*, incl. OpenJDK7),
OpenGL 4.2 and latest EGL, ES1 and ES2 extension updates and lot’s of stabilization’s,
Xerxes Rånby and myself worked on a proper Linux ARMv7 support.
Both were able to test on Omap4 (Pandaboard ES), Tegra2 (AC100), where Xerxes also tested on other machines, eg. Nokia N9 MeeGo.

Even though GlueGen and JOGL in general support EGL and ES1/ES2 since 2008 incl. the GL profile selection,
we figured we need better support for multiple GL implementations on one platform, Mesa3D software and the hardware EGL/ES ones.
Without tweaking your default configuration, JOGL chooses the right implementation for the desired profile,
e.g. hardware accelerate GLES2 for the desired common GL2ES2 profile on your mobile device, even though Mesa is installed.

Besides tiny big fixes and workarounds the biggest amount of work was to attach the Linux ARMv7 job to Jenkins.
We use a cross-compile and cross-test environment, where the build host cross-compiles and makes the Pandaboard ES
fetch the artifacts via rsync and execute the tests. Later the build host pulls the results and forwards them to the Jenkins master.

All JogAmp modules are now build for Linux-Armv7,
a test release is made available here.
You may like to try the test Applets.
Note: This week RC6 will be released under the usual location and the above test URL will cease to exist.

I dared to test browser support via OpenJDK and the IcedTea Plugin,
and for some reason .. it just works 🙂

Please feel welcome to join the discussion.

JOGL on Linux-ARMv7-Omap4

JOGL on Linux-ARMv7-Omap4

JogAmp Release v2.0-rc4

Sven // Dec 2, 2011 9:56:56 AM

After tons of bug fixes and Mac OS X, Solaris and Android platform support
we finally have v2.0-rc4.

Besides many important bug fixes this release supports
Mac OS X 10.6.4 and 10.7.

The Applet browser plugin is also enhanced and validated
on all platforms for FF, Chrome, Safari and IE where supported.


We have to thank each other for our ongoing support,
bug reports, inspiration and pushing for results.

Thank you.


The following aliasing of URL location has been made,
ie. all are aligned to v2.0-rc4 for now.

  • v2.0-rc4 -> archive/rc/v2.0-rc4
  • jogamp-current -> v2.0-rc4
  • jogamp-next -> v2.0-rc4
  • webstart -> v2.0-rc4
  • webstart-next -> v2.0-rc4

Developer downloads at:

Git repositories have been tagged w/ v2.0-rc4.


Planned for RC5 so far:


  • Maven2 integration (I know .. a bit late it is already)
  • Mobile/Android autobuilds / release
  • More bugfixes
  • Update the graph package


Please join the discussion in our forum.

You may like to comment on this release here.

Cheers, Sven

JOGL Test Statistics (Linux, Windows and OS X)

Sven // Oct 14, 2011 12:27:02 AM

To conclude my today series of blog entries, I thought it might be a good idea to show our automatic test statistics.

Here are the latest good and failed test charts for all platforms:

Test Stats 20111013 All

Test Stats 20111013 All - Errors Only

Test Stats 20111013 All - Failure Chart

And finally the progress on OS X with all tests included:

Test OS X 20111013 Overview

Test OS X 20111013 Count

Test OS X 20111013 Runtime

Besides adding running all unit tests to OSX, we also made sure that it’s performance is now equal to the other platforms, ie. around 4 minutes runtime for all tests.

But be aware that these features will be promoted to the next release RC4,
so you would need to wait or use the autobuilds, see Downloading the latest automatic build.

Jogl OS X Port is Nigh :)

Sven // Oct 13, 2011 11:48:16 PM

Since the mouse features were to easy to add and my Android vacation should take a bit longer, our OS X port was a good candidate to burn some hours I don’t have.

What should work for OS X by now:

  • NEWT Top-Level Windowing
  • NEWT Child Window w/ NEWT Parent
  • NEWT Child Window w/ AWT Parent
  • JOGL incl. shared context
  • NEWT works w/ AWT enabled JVM out of the box
  • Method to execute a Runnable on the MainThread
  • The new native Jar loading facility (Application, Applet, Webstart)

The window positioning code was a torture, since the AWT components are not top-level on OS X. Hence we have to calculation the proper screen size position in bottom-left coordination space, even when resizing the window.
Maybe there are still some glitches in case of a NEWT child within an AWT floating Container, but most cases work fine.

Shared or offscreen context destruction was another issue.
We have to run this task on the MainThread, otherwise we experienced a ~10s freeze.

Btw our MainThread semantics have been simplified a lot.
On OS X, it just launches the user main class in a new thread while continuing as the NSApp MainThread.
In short, it is no more required when using an AWT enabled JVM, since it already launches as the NSApp MainThread.

After a few more cleanups, I will prepare the next release and test our new native Jar loading mechanism
and Applets in general.

But be aware that these features will be promoted to the next release RC4,
so you would need to wait or use the autobuilds, see Downloading the latest automatic build.

Note on the side: Motivation for the OS X port was not my liking of the platform, which I don’t, but to just complete our platform independent solution. Hence having NEWT working well on OS X is mandatory here.