Traditional Applets

You may choose to use traditional Java Applets to deploy your in-browser applet and reference the JOGL resources.

This method simply requires a Java plugin and uses JogAmp's build-in method to locate and load the native JAR files.

Examples are available:
                        <object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
                              width="200" height="200">
                           <param name="code" value="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run">
                           <param name="archive" value="jar/gluegen-rt.jar,
                                                        jar/jogl-all.jar,
                                                        jar/jogl-test.jar">
                           <param name="java_arguments" value="-Dsun.java2d.noddraw=true">
                           <param name="gl_event_listener_class" value="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2">
                           <param name="gl_profile" value="GL2ES2">
                           <param name="gl_swap_interval" value="1">
                           <param name="gl_debug" value="false">
                           <param name="gl_trace" value="false">
                           <comment>
                             <embed code="com.jogamp.newt.awt.applet.JOGLNewtApplet1Run"
                                  width="200" height="200"
                                  type="application/x-java-applet;version=1.6"
                                  pluginspage="http://java.sun.com/javase/downloads/ea.jsp"
                                  archive="jar/gluegen-rt.jar,
                                           jar/jogl-all.jar,
                                           jar/jogl-test.jar"
                                  java_arguments="-Dsun.java2d.noddraw=true"
                                  gl_event_listener_class="com.jogamp.opengl.test.junit.jogl.demos.es2.GearsES2"
                                  gl_profile="GL2ES2"
                                  gl_swap_interval="1"
                                  gl_debug="false"
                                  gl_trace="false">
                                <noembed>Sorry, no Java support detected.</noembed>
                             </embed>
                           </comment>
                        </object>
                    

JNLP Files

You may choose to use JNLP to deploy your application or in-browser applet and reference the JOGL resources.

You have the choice to use JNLP Applets or Java Webstart.

You might want to have a look at our Test page for JOGL Applets. Here is a documented example

Supported JNLP bases are:

  • http://jogamp.org/deployment/jogamp-current/ Current Version
  • http://jogamp.org/deployment/jogamp-next/ Next Version
  • http://jogamp.org/deployment/v2.0-rc10/ Specific Version

Desktop All in One

With AWT

  • jogl-all-awt.jnlp
    • gluegen-rt.jnlp

Without AWT

  • jogl-all-noawt.jnlp
    • gluegen-rt.jnlp

Mobile

  • jogl-all-mobile.jnlp
    • gluegen-rt.jnlp

The above JNLP files will load the GlueGen JARs as well as the JOGL All-In-One JARs.


JAR Files

Native JAR Files

All JAR files containing platform dependent native libraries contain the string natives and the os.and.arch identifier in their name. The actual native library files are listed below.

Naming Convention

JogAmp's build system has the notion of os.and.arch string identifier, to name platform dependent build artifacts.
Currently used and supported names are:
  • freebsd-i586
  • freebsd-amd64
  • hpux-hppa
  • linux-amd64
  • linux-ia64
  • linux-i586
  • linux-armv6
  • linux-armv6hf
  • android-armv6
  • macosx-universal
  • solaris-sparc
  • solaris-sparcv9
  • solaris-amd64
  • solaris-i586
  • windows-amd64
  • windows-i586

Gluegen JARs - Mandatory

  • gluegen-rt.jar
    • gluegen-rt-natives-os.and.arch.jar

JOGL JARs - All-In-One

This might be the best solution for desktop (applets and webstart).
It is much faster to download a (maybe bigger) file once and cache it for most purposes, than to download tens of files where its cache might not be reuseable.

With AWT:
  • jogl-all.jar
    • jogl-all-natives-os.and.arch.jar
Without AWT:
  • jogl-all-noawt.jar
    • jogl-all-natives-os.and.arch.jar
Mobile:
  • jogl-all-mobile.jar
    • jogl-all-natives-os.and.arch.jar
Android:
  • jogl-all-android.jar
    • jogl-all-natives-os.and.arch.jar

Atomic Deployment

This is a fine tuned solution where every byte counts.
It is also possible to use this strategy as a starting point for efficient manual deployment.

Cores

  • Mandatory:
    • nativewindow-core.jar
    • jogl-core.jar
  • Newt (optional):
    • newt-core.jar
    • newt-ogl.jar (to use NEWT with JOGL)

Platform (mandatory)

Chose the same platform for all picks :)
  • NativeWindow [pick your platfrom, if available]:
    • nativewindow-os-x11.jar
  • JOGL [pick your platform]:
    • jogl-os-x11.jar
    • jogl-os-win.jar
    • jogl-os-osx.jar
    • none
  • Newt [pick your platform] (optional):
    • newt-driver-x11.jar
    • newt-driver-win.jar
    • newt-driver-osx.jar
    • newt-driver-kd.jar
    • newt-driver-bcm-vc.jar
    • newt-driver-bcm-old.jar
    • newt-driver-intelgdl.jar
    • none

OpenGL Profile (mandatory)

Pick as many as you like, at least 1:
  • Embedded Device Profiles
    • jogl-glmobile.jar
      • jogl-glmobile-dbg.jar
  • Desktop Profiles
    • jogl-gldesktop.jar
      • jogl-gldesktop-dbg.jar

JOGL Toolkits/Misc (optional)

  • jogl-util.jar
  • jogl-util-gldesktop.jar
  • jogl-util-fixedfuncemu.jar

AWT (optional)

  • nativewindow-awt.jar
  • jogl-awt.jar
  • jogl-util-awt.jar (if using jogl-util)
  • newt-awt.jar (if using with NEWT)

GLU (optional)

  • jogl-glu-tess.jar
  • jogl-glu-mipmap.jar
  • jogl-glu-gldesktop.jar

Native Library Files

Gluegen native libraries:
  • libgluegen-rt.so
NativeWindow native libraries
  • libnativewindow_awt.so
  • libnativewindow_jvm.so
  • libnativewindow_x11.so
JOGL native libraries
  • libjogl_desktop.so
  • libjogl_mobile.so
  • libjogl_cg.so
NEWT native libraries
  • libnewt.so