views:

203

answers:

1

Hi, I'm pretty confused by the multitude of frameworks to choose from: I would like to be cross platform, possible even try to make an application for my mobile phone. Probably a game, but could be something else.

  1. Can I use something else apart from Xna with the Windows Phone? One of the aforementioned frameworks.
  2. Tao says that it is a framework based on Mono. (at least, that's the immediate subtext when you search in Google for Tao framework.) But in their FAQ, it says: "The Mono Project is an open development initiative sponsored by Novell to develop an open source, UNIX version of the Microsoft .NET development platform" Which would mean that it is a complete replacement for Mono, right?
  3. Does OpenTK always need either Mono or Tao to work cross-platform?

Thank you

+1  A: 

AFAIK, WinPhone7 will only support XNA, i.e. the CF subset of the .NET class libraries, plus the XNA graphics/audio/input/etc APIs.

Tao and OpenTK are both bindings to OpenGL, etc. They can be used on .NET or Mono, but only on platforms where OpenGL etc. exist. OpenTK is basically a nicer version of Tao - you wouldn't use both.

The key to portability is to do as all big games engines do - abstract out the audio and video renderers, and the input system. This renderer object would take your scene graph and render it to the screen using the platform's APIs. So on WinPhone and Xbox you could use XnaRenderer; on Windows you could use XnaRenderer, OpenTKRenderer or DirectXRenderer; on Linux, Mac, iPhone (via MonoTouch), Android (via MonoDroid) you coudl use OpenTkRenderer.

You might want to look at the open-source C# Axiom3d graphics engine, which already does this.

mhutch