3D Scene Graph: What is it and why?
Welcome to the page describing my 3D Scene Graph project. The pursuit of the perfect Scene Graph will probably always
be one of the Holy Grails of 3D graphics. To be the perfect scene graph for a project, the scene graph must have been
designed for that project's domain. I.e. A real-time scene graph for games is not best suited for a CAD package.
This scene graph project targets real-time rendering (games, vis sim, etc) on single CPU platforms. Single CPU platforms were selected to allow support for the scene graph on the small/low-resource console style platforms, without the overhead required for the multi-threaded rendering. Some of the scene graph's design has roots in Performer, Cosmo3D, and a few other scene graph technologies out there. The project is written all in C++ and the architecture supports different rendering APIs, but currently using OpenGL.
Some may ask why develop a scene graph, as there are already many out there. First, this technology, or permutations there of, have been with me for quite some time. Second, this is my technology playground which I use as a testbed for my other projects, such as terrain tessellation. Third, the best way to fully understand a technology is to develop it. Finally, this gives me control to develop what I need for a project, how I need it.
Is it for sale? No. Besides being a test bed for my projects, also consider this technology a part of my resume. If you are interested in the technology, hire me. (Actually send me an e-mail, and we can talk.)
As I find the time, or desire, I put together pages about portions of the Scene Graph or about exploits in it. The pages have a tendency to lag behind the actual project but I try to keep them somewhat up to date. Here are the current pages:
These pages are a general description of the SceneGraph, and do not cover it completely. More capabilities are available, but simply are documented yet or do not have images worthy of placing on the webpage.