The final aim of this project. An executable-library to easily load, render and navigate the environments in real-time. It should also provide a higher-level interface closer to possible game logic languages than to geometric programming.
Demiurg is an application to model large meshes, and export them in the progressive regular format used by the engine library. It also will allow you to apply textures, place objects in the world, load skies, etc...
This component is not intended for precission model construction: you cannot control the position of single vertices or the shape of concrete faces, only the general result. Note that this doesn't mean you cannot design details in the landscape.
Other functionalities for this component includes object conversion and optimization, and slicing for complex objects like trees into various billboard layers.
This has to be a library to handle and manage resources. It has to be able to page data from-to disks, remote sites, or abstract media in general, and also predict when it is going to be needed. Also it has to define the "levels of detail" abstraction for any kind of data. The name is after a provider goddess in the context of D&D
This is a simple minimalist geometric library with primitives such as point,vector,ellipsoid,etc... common to all the applications and other libraries.
The library to handle different kinds of meshes and algorithms on them. It has classes for simple modelling-time meshes, for semi-regular meshes, for meshes with parametric space and for constant fast-render meshes.
This library is intended to be a portable interactions repository, to handle graphic interactions (to specify a sphere, a vector or whatever) transparently to the application. It actually uses some GTK widgets, but this dependency is encapsulated in very few classes, and easy to change.