---- Reported by corthbandt 2007-07-04 07:03:46 ----
The JOGL jar has become quite big (1 MB). For a better user experience we'd
like to display sort of a splash screen and a custom progress bar.
But there's one JOGL component I can't delay-load: JOGLAppletLauncher. And
since it sits inside that big jogl.jar the browser has to fetch quite a lot
before my applet has a chance to run.
If the JOGLAppletLauncher was available (including it's JOGL dependencies of
course) as a separate, smaller JAR file I could have this init order:
fetch JOGLAppletLauncher.jar -> fetch MyApplet.jar -> [Init Splashscreen] ->
fetch MyRsc1.jar -> fetch MyRsc2.jar -> fetch jogl.jar... -> fetch
MyGameCode.jar -> [Run Game]
That way I'd have control over what gets loaded when and could display my
An alternative (and probably easier) approach would be to separate optional
JOGL components into an extra JAR. Looking at the contents and sizes of
jogl.jar my candidates would be:
- Debug helpers (javax.media.opengl.TraceGL, javax.media.opengl.DebugGL)
- Font data (com.sun.opengl.util.GLUTBitmap*)
- CG stuff (com.sun.opengl.cg.*)
- possibly com.sun.opengl.impl parts
This would reduce the initial download size quite a bit (~300 kB).
But really I'd prefer if only the stuff needed for startup was packaged
On a side note: AFAICS, JOGLAppletLauncher is supposed to load the DLLs/SOs in
parallel. My experiments at least indicate that those binary modules are still
loaded before my code gets any chance to run.
---- Additional Comments From corthbandt 2007-07-04 07:20:38 ----
Two points of clarification might be useful:
1st: The loading screen would be stock AWT of course, no OGL there
2nd: Yes I could package these JARs myself but I'd like to keep the benefit of
a widely trusted signing authority (Sun) instead of signing them myself.
---- Additional Comments From kbr 2007-07-04 14:52:52 ----
A new JNLPAppletLauncher has been released today which should address your
primary concern of initial download size. It is available at
http://applet-launcher.dev.java.net/ and a version of JOGL (1.1.1-rc3) was
released today which supports it. Please try it and post on the JOGL forum with
any feedback. We don't intend to split up jogl.jar, as DebugGL and TraceGL
actually do not add that much space above the base GL class. Also, the Pack200
compressed version of jogl.jar, which will be downloaded automatically if the
client is JDK 1.5 or above, is about 300K, or about 1/3 the size of the
--- Bug imported by email@example.com 2010-03-24 07:50 EDT ---
This bug was previously known as _bug_ 306 at https://jogl.dev.java.net/bugs/show_bug.cgi?id=306