Nodes homepage on SourceForge.
What is Nodes?Nodes is a scene-graph for Linux using OpenGL. It is written as a C++-classlibrary, and has been heavily influenced by SGI:s Open Inventor.
The basic idea is that the developer creates instances of classes (nodes) and inserts these into a scene graph. When the scene is rendered the scene graph is traversed and each node is rendered. By organizing nodes in a hierarchical manner it is much easier to manage the rendering process, as well as dynamically insert or remove nodes.
Currently various classes exist for rendering primitives (triangles, quads, etc.), textures, lights, spheres, materials, colors etc. Higherlevel features such as bounding-sphere culling are also more or less complete. More classes are added as the need arises. A framework for loading models from files is also present, and currently some internal formats for triangle meshes can be loaded. Eventually other (more useful) formats need to be added.
Ultimately Nodes tries to remove the need to use pure OpenGL calls, and instead have classes that represent every needed aspect of the rendering process. At present most basic functionality is wrapped, and simple applications can be created. Bugs do exist, and all classes are not up-to-date with all new features.
DocumentationCurrently there is no overall documentation for Nodes. This will be remedied as soon as the API is stable enough, but every class and method is documented using the excellent Doxygen tool.
The classdocumentation will shortly be available here.
RequirementsIn order to build Nodes you need a fairly recent C++-compiler, such as gcc 2.95, or similar. You also need a recent version of Mesa or another OpenGL-compliant library, as nodes builds upon OpenGL.
Various types of imagelibraries are also needed for loading textures, but they are optional, and support is still quite unfinished.
DownloadCurrently the only way to get Nodes is through anonymous CVS. It is not yet stable enough to warrant a real release, but Nodes is maturing quite fast. To access the repository use the following commands:
% cvs -d:pserver:email@example.com:/cvsroot/nodes login % cvs -z3 -d:pserver:firstname.lastname@example.org:/cvsroot/nodes co nodesWhen prompted for a password for anonymous, simply press the Enter key.
InstallationOnce you have downloaded the sources you need to configure it for your system and then compile it. Nodes uses autoconf, so basically you only need to issue the commands:
% ./configure % make % make installRead the toplevel README and INSTALL for the options that can be given to ./configure.
ResourcesMore resources related to Nodes can be found on the project homepage on SoureForge. There you can find discussion forums, mailing lists and access to the CVS repository through a WWW interface.
FeedbackContact Chakie if you have questions or comments. If you are interested in knowing more about Nodes or even helping out with the development don't hesitate to contact me!