Hi. This may actually be off-topic here, but I have hopes that someone who knows what I need is on the forum and can point me to the right thing.
We have a JNI wrapper around OpenGL (we call it avsjogl). This works on Windows and Sun, and I am trying to port it to the Mac. I'm sure we'll be porting to JOGL at some point, but I was hoping that just changing the platform-specific part of our current code would be a good first step.
(Where would I find the most up-to-date status and plans for JOGL? I see the latest binaries are from September, while the source is still being updated, and some people are putting more recent binaries up.)
In the JNI code (which is in C), I have to load the AWT library, get the drawing info out of that, and get the version native to the mac.
This is a JAWT_MacOSXDrawingSurfaceInfo, and inside it are:
On Windows, we get a field called hwnd from the Windows-specific structure. On Sun, we get a drawable. This gets passed around a bit using JNI, and eventually goes into a call to glXMakeCurrent() (or
wglMakeCurrent(), depending on platform). That call is failing, with GLXBadDrawable as the error. I've tried using the cgWindowID, cocoaWindowRef, and carbonWindowRef.
Do I need to do something else to get an OpenGL-drawable window? What do I use to get an X Window that I can pass to glXMakeCurrent()?
Thanks a lot for any pointers.