A scene graph is a kind of database for scene rendering. Normally, developers can get all objects from the root node. Of course, in OGRE also, developers can access all functions from the root object. The roo object is the singleton, and has exchangable managers. Start with OGRE::Root::getSingleton(). Yes, that is the origin of XOOPS Cube architecture.
The root node which is the most important for developers, is under SceneManager, which is a one of these managers. For octree, terrain, BSP and more, SceneManager is exchangable as well as other managers. This concept makes it possible to keep each managers compact. The octree SceneManager doesn’t need to consider the BSP SceneManager. And, the BSP SceneManager doesn’t need to consider Terrain. One system can do its best in own system.
This architecture is for flexibility. But, I paid notice that the architecture of OGRE is useful to solve “religious controversy”. For example, if OGRE implements Octree as the default fixed scene manager, other methods are impossible or are labeled “3rd party plugin”. But, these managers are a method. And, freedom of choice should exist.
The dev team of Cube has said many times;
- The difference between core developers and module developers will be removed. These titles will be perished.
- The authority for specific developers is junk and will be perished.
- Cube is different from XOOPS at all. And, developers in Cube World will become very very important than XOOPS World.
In addition, “development skill is not natural skill but wish and effort”.
Today, developer categories like “core developer”, “module developer” and “3rd developer” don’t have meaning. We have to forget our experiences that we had gotten in XOOPS. Cube will be exciting, but you may be afraid of perfect freedom. Therefore, this is time that you should choose your CMS from XOOPS, Cube, eZp, drupal and more. If you don’t understand feeling of Cube’s goal, see OGRE community.
However, these feelings and Japanese feelings have big difference. Therefore, things of Japanese may be decided by Japanese. Very well. XOOPS Cube has a rule that the dev team never touch communities of each nations.
(Of course, I don’t join in Japanese community)