Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Before I start development of an XNA game, I need to choose a 3D game engine to develop upon. Is this belief unfounded? Does XNA have basic object transformation, lighting and mesh/texture importing functionality by which you can develop a decent 3D side-scrolling game?

Chances are I'm going to need a 3D engine such as Torque X to handle most of the special effects, animation and sound for me. What are the engines that you recommend building an XNA game with? What work reliably in your experience? Is XNA alone enough? do you have repositories of code that work directly with XNA to create effects and other game environments with sunlight, fog and rain?

share|improve this question
2  
Don't even consider using TorqueX, you have been warned gamedev.stackexchange.com/questions/2934/… –  David Young Nov 2 '10 at 21:56
1  
"Does XNA have basic object transformation, lighting and mesh/texture importing functionality"I know this is snarky, but a quick glance over the XNA docs would answer this –  Chris Howe Nov 2 '10 at 22:02
1  
@Chris I agree... Or, you could take a quick glance and answer it for easy reputation! :) –  Ricket Nov 3 '10 at 3:45

5 Answers 5

up vote 23 down vote accepted

In short, the most usable 3D game engines written in fully managed C# code (which allows you to develop for the Windows and Xbox 360) are:

  • Ox Game Engine - a 3d version of the ButterMilk 2d engine - excellent features, Jiggle physics, reasonable scene editor, shadows. Free.

alt text

  • SunBurn - AAA rendering with dynamic lighting & shadowing, occulusion, HDR rendering, spectacular, diffuse and bump maps, and includes a 3D Game world editor to edit models, lights, materials. $150 or more. Free version also available.

alt text

I would have mentioned Torque X on the top list but the negative response has been so overwhelming that I'm quite convinced it really a mess.

The other engines are listed here:

Open Source

3D

2D

  • Flat Red Ball - 2.5d game engine thats been around since the Managed DirectX days. Very well updated and supported.
  • Jemgine - 2D game engine with level editor, components, visual scripting language
  • Box2D.XNA - A C# port of the Box2D engine
  • DEngine - 2D tile engine with basic editor

Commercial game engines

  • Kitae - 2D game engine with tile/level editor, collision detection, sprites, fonts, etc.
  • TorqueX - (not recommended)
    • 2D - TorqueX Game Builder to edit levels from a drag and drop UI.
    • 3D - TorqueX World Builder to build 3D game levels with objects and lighting
  • Visual3d.net - (Windows only)

Specialist

Physics Engines

If you require code that will run on Xbox 360 or Zune then you need a 100% managed engine.

Most of these are free, or are free wrappers around commercial products.

If you are only targetting windows then you can use any of these:

  • PhysX
  • ODE (Open Dyamics Engine)
    • XPA (XNA Physics lib): XnaDevRu has a nice wrapper for, but it's majorly outdated and ODE is rumored to be bad/unstable. There's very little information about it, but the API is pretty friendly. Pretty easy to get up and running with simple collisions (even I made it!), but its hard to find what you need when problems occur, and its updated very slowly.
  • Newton Game Dynamics
share|improve this answer
1  
pretty impressive list .good work –  Vishnu Nov 8 '10 at 6:51
    
Who's giving the negative response for TorqueX? I don't see any answers that say that. –  George Stocker Nov 22 '10 at 17:22
    
@George - See the first comment on my question. It links to this page where this community practically puts you off ever looking into Torque - gamedev.stackexchange.com/questions/2934/… –  Edwardian Nov 23 '10 at 10:47
    
Thanks! I didn't see that initially. –  George Stocker Nov 23 '10 at 16:24
    
Can someone update the list with the XNA version they support? From what I can tell, only SunBurn supports XNA 4 right now. –  EndangeredMassa Mar 10 '11 at 22:19

XNA offers everything you need to get your models on the screen. Its content pipeline is unmatched by anything I have seen so far. However, the interface to the rendering subsystems is fairly low-level, and you will most likely end up pushing a model's meshes to the hardware "by hand".

A good engine will help you batch submeshes with the same materials, handle transparent polygons and all that jazz. Adding a good scene manager will ensure that you do not send geometry that cannot be seen to the hardware. You can code all these things yourself, or you can get a rendering engine to do it for you.

And we haven't even considered things other than rendering, such as sound and physics.

You will find a wealth of interesting links on the XNA developer's Survival Kit (XDSK).

share|improve this answer

I highly recommend checking out FlatRedBall, as the engine is pretty straightforward, frequently updated, and the development team offers great support. I worked with the A.R.E.S.: Extinction Agenda development team while they were using FRB, and they had nothing but high praise.

Here are a few links to get you started:

share|improve this answer

You can develop a 3D game without the need of using an existing game engine as XNA gives you plenty of classes for that.

But if you really want to use a 3D engine, your best bet right now is using the SunBurn Engine:

http://www.synapsegaming.com/

Version 1.X is only a lighting engine, but Synapse has said that version 2.X will be a full game engine.

share|improve this answer

I would use Torque X now because it's fully featured. But thats if they still have it $150 or under because it supports Windows Phone 7 with Torque dev community.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.