views:

115

answers:

5

I'm looking for a 3d engine (for games). I prefer C# with .net or Mono but C++ would also do it if I don't find anything for C#. I want to code programs for Windows and Linux. iPhone/Android would also be interesting for other projects.

So far I found these engines (C#):

  • Axiom - This one seems pretty fair and since it's a C# port of OGRE3D it should offer basic function (I'm quite a beginner in 3D so I don't need much functions). It's Windows and Linux :), don't know about Mac, It's Open Source
  • Unity - I think the engine itself is written in C++, but I'm not sure. But you can write the game in C# :) and JavaScript. It's Windows and Mac and some other platforms like iPhone, ... but no Linux. And I don't know how much you can do in the free version. It's not open source
  • XNA, it's for Windows only but there is MONO.XNA but I think this project is dead.

Are there some other engines I could use in C#?
Axiom seems to be what I need. Someone got experience with Axiom? Which one would you choose?

Thanks!

Edit: It would be cool if the program built with the engine/framework doesn't require any runtime program installed (except .net or mono) As far as I know you need to install XNA to run XNA applications. :(

+2  A: 

Look at OpenTK for a good baseline OpenGL graphics library. Documentation is here as well as a similar post from GameDev.

jalexiou
A: 

Just a wild suggestion, but you could try to do it using the canvas-element in html5. You'll be able to do the same things as you can using C++/OpenGL, but using JavaScript directly in the browser. Of course you wont be able to get it to perform quite as well as you could using C++, but portability will be great; no frameworks to install and anyone with a browser (regardless of OS) can play it.

Here's a couple of great tutorials

Dont forget that you'll get the good and bad parts of being bleeding edge...

Jakob
Well, if that is the case you better go with Unity, it is super powerful and can deploy games using a web plugin (Linux included). But, if I understand correctly the question, games on the browser are not an option.
Seth Illgard
+1  A: 

Check out Irrlicht Engine.

I think it has everything you are asking for (Opensource, platform independent, etc. ). I only used it for a small project in the past, but I know it has a very good renderer system. The engine doesn't have a Level Editor itself but you buy it as an add-on application.

For Irrlicht/Mono integration, look here.

For iPhone/Android, I think your best bet is going with Unity. As you stated, it isn't open source, but I have found nothing easier than this spectacular engine. The main problem here is that iPhone/android licences are sold individually (Unity is free only for pc, mac and browser game development).

Seth Illgard
A: 

The Qt framework fully supports OpenGL. It's C++. It's not exactly an engine, but you may be able to plug in some other engines into your source.

I am new to Qt as of a few weeks to a month ago, also coming from a heavy C# background. There were some hurdles are first (mostly compiler-based head scratchers) but beyond that I have completely fallen in love with it. I tried things like Java and Python when I was looking to go cross-platform, but Qt is where I settled.

jocull
A: 

I was once a great fan of OGRE - maybe it's worthwhile to check if MOGRE is supported on Mono.

EDIT:

Well, I checked, and it says that it isn't :( . Guys are recommending AXIOM instead.

Daniel Mošmondor