OS X Port Goals?

Started by Gavia, July 23, 2004, 16:48:53

Previous topic - Next topic

Gavia

I was just curious what the goal of the OS X port was (other that to get it working  :D) . Did you want the native side to be a cocoa wrapper using NSViews, NSEvents, NSOpenGLContext etc..., or to be a more complete version of what's there now with just straight CoreGraphics and CoreFoundation? (from what I could see just briefly browsing the CVS repository)

I've been programming Objective-C for about 5 years now but haven't done much CoreGraphics work and was just going to poke around. I'm not going to promise anything since it looks like Elias will be well on track and there has been a history of empty promises with the port, but I figured if I  could get an idea of where you wanted to go with it and what the current  major issues are I could plod along, as much for my own curiosity as well as maybe helping things out.

Thanks,
Michael

princec

100% identical behaviour to the Windows and Linux ports, nothing more, nothing less.

Cas :)

elias

There have been so many weird problems with Core* and java, so I'm giving up on that path and will look into Cocoa. However, instead of Obj-C I'm planning on using the built-in java binding to Cocoa, if there's no apparent pitfalls in that.

- elias

Gavia

Just browsing some more of the docs I found this:
http://developer.apple.com/documentation/Cocoa/Conceptual/OpenGL/index.html

It looks like the Java Cocoa version doesn't provide access to the NSOpenGLContext and others (Which seems silly since it's all a wrapper to C and Core anyways I think)

Also I believe Java Cocoa just goes across a jni bridge to the corresponding Obj-C versions which then are sitting on top of the Core* methods, so going Java might add some additional overhead as well, but I'm not sure if that'll be significant or not.

Just more food for thought...

-Michael

elias

Quote from: "Gavia"Just browsing some more of the docs I found this:
http://developer.apple.com/documentation/Cocoa/Conceptual/OpenGL/index.html

It looks like the Java Cocoa version doesn't provide access to the NSOpenGLContext and others (Which seems silly since it's all a wrapper to C and Core anyways I think)

Ack, that's too bad...

Quote from: "Gavia"
Also I believe Java Cocoa just goes across a jni bridge to the corresponding Obj-C versions which then are sitting on top of the Core* methods, so going Java might add some additional overhead as well, but I'm not sure if that'll be significant or not.

I'm not the least concerned about overhead, as this is going to happen at init time only. But I don't hope cocoa is simply layered on top of carbon, because that would leave me at square one, fighting weird Carbon<->java interaction problems.

Ah well, I'll have a blast implementing it, I'm sure :-)

- elias

elias

Ah, I can see the reason they didn't make the opengl cocoa stuff available:

From the page:

Quote
The Cocoa OpenGL classes are available only to Objective-C applications. OpenGL is a C API; as such, it is inaccessible from Java.

which is exactly what we're trying to change, right? I'm sure I can do most cocoa in java and let the OpenGL init part of it be implemented in native code.

- elias