All of the Webstart demos work without a hitch on OSX EXCEPT for the JavaCoolDemos. None of those work, all having problems with loading the jni library.
Excellent!
I assume JavaCoolDude will update his libraries sometime soon 
Will.
Oooooooops sorry 
/me goes and updates his stuff 
Done!!!
Check em out and lemmie know if they work now.
PS: Anything that is pixel and vertex shaders accelerated won’t work with sub Geforce 3 cards such as the GF 2 PRO-ULTRA-MX, GF4 MX, Radeon 7500-7200-7000 etc…
Just a heads up :
Particles works just fine. The others crash with
Java Web Start 1.4.2_03 Console, started Wed Feb 11 23:55:28 EST 2004
Java 2 Runtime Environment: Version 1.4.2_03 by Apple Computer, Inc.
net.java.games.jogl.GLException: Error creating nsContext
at net.java.games.jogl.impl.macosx.MacOSXGLContext.create(MacOSXGLContext.java:127)
at net.java.games.jogl.impl.macosx.MacOSXGLContext.makeCurrent(MacOSXGLContext.java:136)
at net.java.games.jogl.impl.macosx.MacOSXOnscreenGLContext.makeCurrent(MacOSXOnscreenGLContext.java:131)
at net.java.games.jogl.impl.GLContext.invokeGL(GLContext.java:199)
at net.java.games.jogl.impl.macosx.MacOSXOnscreenGLContext.invokeGL(MacOSXOnscreenGLContext.java:79)
at net.java.games.jogl.GLCanvas.displayImpl(GLCanvas.java:182)
at net.java.games.jogl.GLCanvas.display(GLCanvas.java:82)
at com.xith3d.render.jogl.CanvasPeerImpl.render(CanvasPeerImpl.java:963)
at com.xith3d.scenegraph.View.renderOnce(View.java:735)
at com.xith3d.scenegraph.View.renderOnce(View.java:668)
at Xith3DFrame.run(Xith3DFrame.java:140)
at java.lang.Thread.run(Thread.java:552)
I’m just going to guess that you’re requesting something special in your pixel buffer format 
Here try this simple demo
Basic Framework
http://www.users.xith.org/JavaCoolDude/JWS/Xith3D/framework/xith3dlogo.jpg
Keys: Escape
Source
It has a wicked short code that you can read through in matter of seconds.
Also if I follow what you’re saying only the particles demo works on your machine which points to the way I set up my canvas as, unlike all other demos, the particles one is set up differntly
The webstart version definitely doesn’t work, and there are some things in the source (like the Display class) that I don’t have access to.
Alrighty, definitely something wacky in the native code. I left the option at 640x480 and clicked okay and got:
If you can give me some idea what your code is doing, I will try to trace down and fix the bug in the OSX native code.
Man there really is nothing to explain as the code does the strict minimum to load a Xith3D canvas onto a JFrame.
Hmm try to replace the stuff in the class contructor with this code
VirtualUniverse virtualUniverse = new VirtualUniverse();
RenderPeer renderPeer = new RenderPeerImpl();
CanvasPeer canvasPeer = null;
Canvas3D canvas = new Canvas3D();
Locale locale = new Locale();
view.setFieldOfView((float)Math.toRadians(22.5));
virtualUniverse.addLocale(locale);
locale.addBranchGraph(scene());
virtualUniverse.addView(view);
canvasPeer = renderPeer.makeCanvas(parentFrame.getContentPane(),
640,480,16,false);
canvas.set3DPeer(canvasPeer);
view.addCanvas3D(canvas);
parentFrame.pack();
parentFrame.setVisible(true);
(loopThread = new Thread(this)).start();
I suspect my displayOption class to return a non-valid parameter on a mac…
Yeah, the odd part is that I can get Xith3D to work just fine now on my own and even get the other demos to work without any issues - I just can’t put my finger on what you’re doing specifically that is making the OpenGL context creation fail on OSX.
There seems to be some funkiness with the NSRect not having a valid size - some sort of ‘drawing too early’ error.
NSRect frame = [nsView frame];
if ((frame.size.width == 0) || (frame.size.height == 0))
{
fprintf(stderr, "Error: empty view at \"%s:%s:%d\"\n", __FILE__, __FUNCTION__, __LINE__);
// the view is not ready yet
return NULL;
}
This is where things blow up right here. So somewhere there is a difference in when things are getting drawn.
try omitting pack() from the last chunk of code I provided you with
Yep, that does it. Once the pack is gone the content renders. I do have to set the size of the parentFrame manually in order to get it to not be a 5x5 pixel box 
I changed that pack section into
parentFrame.setSize(parameters[2],parameters[3]);
//parentFrame.pack();
It works just fine now. Didn’t see where the parentFrame’s size was being set so I had it set based on the options chosen by the user.
/me takes notice and goes updating his demos
is pack() evil with JOGL/MacOSX for some reason? Should we not use it or will this problem be fixed?
Will.
Can’t answer that question for you yet. I can tell how to get around it, but I’m not yet sure why it behaves as it does.
The problem is that at the time pack is called, the JOGL/OSX component isn’t ready to be drawn.
So essentially what is happening is that when pack() is being called everything is told to get into a drawable state - but the OSX component isn’t ready and as such the size of its component is still 0,0 so it reaches that piece of the GLContext creation, fails - and returns null which causes these demos to fail. I’m sure if we check, isDisplayable() would return false - so we’re just rushing things along and the OSX component throws its exception “I told you I wasn’t ready to draw damnit” and things splode on OSX.
Let me know when you’re done and webstart deployed and I will run them through and make sure they’re all happy.
Done, can you check em out now?
[quote]Done, can you check em out now?
[/quote]
I’m getting a funky Class versioning error:
java.lang.UnsupportedClassVersionError: display/DisplayOptions (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at com.sun.jnlp.JNLPClassLoader.defineClass(JNLPClassLoader.java:309)
at com.sun.jnlp.JNLPClassLoader.access$100(JNLPClassLoader.java:51)
at com.sun.jnlp.JNLPClassLoader$1.run(JNLPClassLoader.java:256)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.jnlp.JNLPClassLoader.findClass(JNLPClassLoader.java:249)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at ClothSimulation.<init>(ClothSimulation.java:66)
at ClothSimulation.main(ClothSimulation.java:48)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.javaws.Launcher.executeApplication(Launcher.java:844)
at com.sun.javaws.Launcher.executeMainClass(Launcher.java:804)
at com.sun.javaws.Launcher.continueLaunch(Launcher.java:682)
at com.sun.javaws.Launcher.handleApplicationDesc(Launcher.java:397)
at com.sun.javaws.Launcher.handleLaunchFile(Launcher.java:199)
at com.sun.javaws.Launcher.run(Launcher.java:167)
at java.lang.Thread.run(Thread.java:552)
Try again please :’(