My development falls into the giant right circle and I never considered developing for the Mac OSX until after I created my first iOS game this month and learned of the Mac App Store opening in 3 months. Now it's as easy as reexporting higher resolution art from Illustrator and a few UIKit changes and I can redeploy my iOS game for Mac OSX and find myself in front of another large app hungry audience that will happily open their wallets.
I'll be one of the first in line to get on the Mac App Store when I've never before developed or sold software since this month. It is making is so darn easy to have a chance.
You make it sound like porting an app from IOS to OSX is easy. Maybe you could write up a blog post or something for ignorants like me who would be interested in doing the same. Thanks for any additional details.
If Apple ports UIKit to Lion, the API side of things could be very easy. The big challenge here is in interaction design.
Some games might make the transition relatively easily. A game that relies mostly on single points of touch has a somewhat decent analog with the mouse, but only if it relies on certain patterns of finger movement. A game that, for instance, involves alternating taps on opposite sides of the screen, would translate badly—it's nowhere near as easy to leap that distance precisely with a mouse as it is with your fingers. Can you imagine playing the iPhone classic Dactyl with a mouse?
That kind of difference is present all over in touch-based applications, in differing amounts. It's up to the developer to find what transitions well and what doesn't, but in most cases it won't be a trivial task.
Touchpads are not 1 to 1 though, like wacom tablets or touch screens, you still have to "move" the mouse, you can't just touch where you want it to go.
OK, so I'm totally ignorant of workings of trackpad (or its potential to work in ways additional to its current use), but might it not be possible for Apple to add the capability (via software) to enable tapping on left/right edge of track pad to have trigger events that are triggered by touch to left/right side of an iPhone/iPad screen?
I have actually searched for alernatve divers for my touchpad (on a pc) to do this, with no luck. I am sure it's possible though, the only limiting factrs would be the accuracy of the touchpad, and users unfamiliar with the new mode.
While Apple hasn't announced anything yet, I have to think that a lot of iOS APIs are going to show up in Lion to make it easier because, you're right, it's very non-trivial now. I mean, I'd rather port a UIKit app to AppKit than a Windows Forms app. But there are a lot more differences than there have to be.
While Apple hasn't announced anything yet, I have to think that a lot of iOS APIs are going to show up in Lion to make it easier…
Prepare to be disappointed. Technology stacks aside, if the interaction models between desktop apps and multi-touch interfaces were in any way relatable, UIKit wouldn't have been invented.
If you want to write a Mac app for the new store, you'll be using AppKit.
For those not familiar with Cocos2d iPhone, it is a fantastic open source 2d game framework. The 'mac support' in Cocos2d iPhone is still experimental, and missing a few features :
The roadmap indicates mac support should be ready this release cycle (0.95), but it probably won't stabilize until 0.96. Once finished, porting games written with Cocos2d between iOS and Mac should be trivial, allowing for differences in input.
If anyone is interested in learning more about Cocos2d iPhone, I've started a tutorial series for people with little or no programming experience:
I had messaged you on the Cocos2d board I think. I started working through your original tutorials but decided to wait until you redid them. Glad to see they're available now - I'll be starting to work through them this weekend!
They're available, but not finished. I've posted the first four courses, which should be more than enough to get started. The next two courses are written, and I'm (hopefully) going to have the in good shape to post next week.
I'm surprised that JWZ (and, seemingly, several of the commenters) was expecting a full OpenGL stack on a mobile phone, and seemingly wasn't aware of the differences between OpenGL and OpenGL ES, particularly with respect to the absence of the long-since-deprecated-in-regular-OpenGL Immediate Mode.
It sometimes seems as though, as a consequence of all the strides made in bringing more serious OS support, better languages and much more coherent UI work to mobile phones in the last few years, many programmers have lost sight of the fact that these are still relatively low-powered embedded devices.
I'll be one of the first in line to get on the Mac App Store when I've never before developed or sold software since this month. It is making is so darn easy to have a chance.