I’m currently developing a XNA Application for the Zune HD. At this time Zune applications are developed by using XNA Framework and an special addon for Zune (it’s called Zune Extensions). In some part of our project, we were talking about MonoDevelopment and their support to Mac Applications. Developing applications on Mac by using C# as language, but also we found a couple of promising projects.
XnaTouch is a free implementation of the XNA Framework for MonoTouch. Your goal is help the port of Zune games for the IPhone / Ipod Touch (and vice versa).
We got very excited because of we might be able to port our current project to IPhone without recoding. So, we decide to start porting one of us prototypes. (Currenlty I selected the wrong prototype, it was good because of it was a more advance prototype, however it required some recoding anyway…).
So, we found that most of our project didn’t need to be recoded. Actually we haven’t to change the login. However because of the lack of some features in the Mono framework, we had to write a custom comprarer when we were using generic dictionaries. The other slightly change was about the assets names, that images in XNA Touch uses the file name instead of a custom name.
After that couple of minor changes, our prototype was running in IPhone. Sadly we haven’t been able to run it in the a real IPhone because of we don’t have a license of MonoTouch, however we saw our prototype running in a IPhone simulator. (Sorry if I cannot show it images yet, but I need to ask for a permission).
So, what I’ve learned it’s simple: There is a chance to write Zune HD and IPhone games almost without recoding, it will be matter about some conditionals symbols and be carefull of using XNA and .NET resources that are implemented in XNA Touch and Mono Framework.
BTW, I mentioned that are two projects, the second project is MonoXNA that is the base for XNA Touch on codeplex.
MonoXNA is other port of the XNA to other platforms. Unfortunatelly we haven’t checked this one first. So, I cannot comment about this port.
Best of luck,