3

I'm working on a game that should run on as many platforms as possible, and was wondering if there are any good 3D libraries that run on Windows Phone 7 and Mono (Windows and Linux). I would use OpenTK, but that is dependent on OpenGL, and Windows Phone only supports managed DirectX (XNA). Are there at least any decent wrappers out there?

Lex Li
  • 60,503
  • 9
  • 116
  • 147
bbosak
  • 5,353
  • 7
  • 42
  • 60

7 Answers7

2

Generally, you will have to stay in the context of XNA and Silverlight only, when coding for Windows Phone 7 - this is due to its ties to DirectX. Windows Phone 7 currently doesn't support OpenGL.

Den
  • 16,686
  • 4
  • 47
  • 87
  • What I'm asking though; is if there's any libraries which provide 'generic' 3d functions and can use either XNA or OpenGL, depending on what device it's running on. My expectations might be a bit too high though. – bbosak Mar 08 '11 at 23:01
  • Not that I am aware of any that could work on Windows Phone 7 at the moment. – Den Mar 08 '11 at 23:34
2

What about MonoGame? http://monogame.codeplex.com/ It brings XNA to other platforms.

Lex Li
  • 60,503
  • 9
  • 116
  • 147
  • Have you actually tried using it? It seems like there is no actual WP7 support - just a statement on the home page. – Den Mar 09 '11 at 03:57
  • It only targets other platforms, not WP7 as that's Microsoft's land. – Lex Li Mar 09 '11 at 06:16
  • 2
    True it doesn't target WP7, but that's not the point of it. The idea is that it's a complete(ish) implementation of Xna for Mono. So in theory most of your game's code can be compiled against the MonoGame libraries instead of the Xna libraries. There would be no point in MonoGame compiling for WP7 as Xna already does that :) – Aranda Sep 06 '11 at 12:33
  • Just as an update comment to Aranda, XNA is now no longer planned for windows 8 devices except desktop and thus mono would be built for windows mobile devices. – scape Oct 20 '12 at 21:22
1

I'm pretty sure that there are not yet any managed 3D libraries that support both Xna and Mono (ie Open GL) back ends. I would suspect your best bet would be to write your own minimal abstraction layer on top of Xna (that just accomplishes what you need), and then implement it in Mono + Open GL.

Either that or you could jump in and start implementing Xna's 3D API in either MonoGame or ExEn. I recall a thread on the MonoGame forums about someone having a very basic initial implementation of VertexBuffer running. This would obviously require pretty decent knowledge of OpenGL though.

Aranda
  • 855
  • 8
  • 17
1

I just made my own 3D library that runs on ALL the platforms -- Sourceforge source code here

bbosak
  • 5,353
  • 7
  • 42
  • 60
0

The Axiom 3D Rendering Engine has support for many platforms and various GFX APIs, including Windows Phone 7, Windows, iPhone, Android, Linux and Mac OSX, using OpenGL, OpenGL ES, DirectX and XNA

borrillis
  • 656
  • 4
  • 7
0

Just as an FYI, v2.0 of MonoGame will add OpenGL ES 2.0 support on iOS and Android as well as and the default shaders from WP7, but on top of that it will also allow you to use custom shaders, unlike XNA on WP7. When v3.0 of MonoGame is released you can expect 3D support to be more robust.

I hope this helps.

Dominique
  • 151
  • 2
  • 2
0

v2.5 of MonoGame was released last week.

All focus is now on v3.0 release which will have 3D. The develop3d branch already has a working 3D implementation. We just need to tidy it up and make sure 2D isn't broken. If anyone is still looking for 3D in MonoGame, please checkout our develop3d branch, and help us make it the best it can be.

D.

Dominique
  • 817
  • 1
  • 5
  • 10