I've just about started with a project I've had in mind for ages. I don't quite know how to start such big projects (bigger than Pong, anyway), so I thought I would get started by making a basic organization.

Now, in games like Freelancer and X feature large, open spaces. I ma aware that these have to be organised, to ensure collision testing don't happen continuously anywhere but only where the player can see it.

I thought first about a general scene graph, I am familiar with those, but it would just have almost all objects directly in the root node. The next idea was a Quad/Octree, but the objects are not quite static, and I don't know if it would make sense if you have to change the tree's organisation every second frame.

So, how is this done in real games? I'm using C# with XNA, if that matters, and would like to run the game on the XBox as well.


Given the minimal information in the question, there is no general answer to that.

Except: Real games use engines that implement features as scene-graphs and proper data structures for collsion-detection and -optimizations, rendering, network, input, serializing and much more.

The idea is to write a game, not an engine.

Unity3D is such an engine for C#.

  • \$\begingroup\$ Would the Blender Engine help me there, too? Unity looks nice, but are they good for a game like Freelancer? \$\endgroup\$
    – Lanbo
    May 28 '11 at 9:56
  • \$\begingroup\$ AFAIK Blender only supports python as stated here \$\endgroup\$ May 28 '11 at 10:11
  • \$\begingroup\$ I don't know freelancer, but here is a list of games made with Unity, that will give you an idea. A video with a spacecraft-like-game called Zero-Chance and made with Unity can be seen here \$\endgroup\$ May 28 '11 at 10:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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