Applets in jME 2.0

So I've started porting jME 2.0 to lwjgl 2.0b1.  For the most part this has been pretty easy but I've come to one sticking point… applets.  The old lwjgl worked with applets by having your applet class call an install method to get the correct lwjgl jars and bin to the classpath.  In theory, this allowed us to keep things nice and abstract between jme applets and the opengl binding.  (We've never implemented applets in another binding, so who knows if this is actually true.)  That's pretty cool because we can right click on an applet in our IDE and just run it without doing special setup, etc.



In lwjgl 2.0 however, this installer was removed and now they use a bootstrapping applet.  After looking over that change this morning, I can not think of a nice way to abstract things in a nice way.  Anyone had a chance yet to look at the lwjgl2 stuff?

I've looked at the javadocs of lwjgl2.0, they certainly made it more difficult… I see three options here:

  1. Port the LWJGLInstaller class to LWJGL2.0 and use that as usual.
  2. Create some interface to make it easier to deploy applets just like in LWJGL2.0. If the LWJGL binding is used, use their classes, otherwise, use a full jME implementation for each of the other bindings. This will probably require extending AppletLoader and override some methods to get the properties from code instead of applet params.
  3. Ask the LWJGL team for advice

As an update…  The way it currently stands in my local code, you can write a jME applet, but then you either have to:

  1. Use the new java plugin + jnlp files, which allows you to specify native files just like in webstart.
  2. Use lwjgl's applet launcher with your applet.



    Neither are particularly heinous.  I guess the question is whether we need to write an additional 3rd generic jme solution or not.