Talk:World Simulator
Engine in C# (vs C/C++)
Good and bad points
- ++ It's C#
- -- Overload of evaluating the track to be displayed (Many marshaling required).
Discussion
To start, I guess for now I'll just make some minimal improvements in C++, it's a good way to make me comfortable with the code base. Probably when enough things will start to be ported to C# we'll consider making the 3D engine working completely in C#. Although this is often a module where performance should not be sacrificed and to much "C# to C++" calls may hurt performances.
Scene-Graph (vs Custom Renderer)
Good and bad points
- -- Outdoor scene like quad-trees / octrees ([1] and [2])
- -- Good scene graphs are in C++, what about the completeness of wrappers?
- -- It's fun to write a 3D renderer
Discussion
Concerning this and the scene graph, I don't think we need a complex scene graph. In every project I made, the use of a specific scene graph quickly became a limitation. Taken this into account, I prefer we write a tiny 3D engine completely in C#, just containing the flat list of 3D objects in the world, it's easy and probably faster: no wrapper, we're free to make application-specific optimizations, etc. For example we can then switch to a quad-tree (or octree) for storing objects, which is really better than a scene graph in an outdoor scene. ([3] and [4])
Humm, if you want to understand my opinion about scene graph you can see what says this guy: [5]
Toolkits
- OpenTK, an OpenGL/AL wrapper as well as a toolkit providing math functions, etc.
- This may be a good choice to. It has less dependencies than TAO (since/however it provides less wrappers..).
- TAO