Kambi 1.3.1

Kambi is an open-source engine that is especially oriented towards working with VRML models.

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!
send us
an update
GPL (GNU General Public License) 
2.6/5 14
Michalis Kamburelis
ROOT \ Multimedia \ Graphics
Kambi is an open-source engine that is especially oriented towards working with VRML models (although other model formats are also supported).

Here are some key features of "Kambi":

Optimized OpenGL rendering of models in VRML 1.0 and 2.0 (aka VRML 97) formats.
3DS, MD3, Wavefront OBJ, Collada file formats are also supported. They can be loaded, and converted to VRML.
Animations are supported, by interpolation.
Octrees are used for various collision detection tasks.
Shadows by shadow volumes (full implementation, with z-fail / z-pass switching, silhouette detection etc.).
Bump mapping (using various implementations: basic multitexturing with dot3 (normalized by cube map or not), GLSL normal, GLSL with classic parallax mapping, GLSL with steep parallax mapping and self-shadowing).
Shaders. There are classes to easily use ARB fragment / vertex programs and GLSL shaders. Most important, you can add and control GLSL shaders from VRML. So GLSL shaders are fully available for model designers, programmer doesn't have to do anything.
GLWindow unit is available to easily create windows with OpenGL context. The intention of this unit is to be something like glut, but magnitudes better - using clean ObjectPascal, for start. Also it allows you to easily create menu bars, open/save file and similar dialogs that are implemented using native controls (GTK (1.0 or 2.0, and yes, GTK 2.0 version is perfectly stable and adviced) or WinAPI).
Reading and writing of images in various formats, processing them and using as OpenGL textures. Besides many common image formats (png, jpg, ppm, bmp, just for starters), included is also support for RGBE format (Radiance HDR format).
Handling of fonts, including rendering them with OpenGL, as bitmap or outline (3D) fonts.
3D sound by OpenAL helpers, including intelligent OpenAL sound manager and OggVorbis format handling.
Ant-aliasing (initializing OpenGL multi-sampling) is covered.
Ray-tracer based on VRML models is implemented.
The engine is portable. Currently tested and used on Linux, FreeBSD, Mac OS X and Windows (all i386), and Linux on x86_64. Porters/testers for other OS/processors are welcome, the engine should be able to run on all modern OSes supported by FPC.
Engine components are independent when possible. For example, you can only take model loading and processing code, and write the rendering yourself. Or you can use our OpenGL rendering, but still initialize OpenGL context yourself (no requirement to do it by our GLWindow unit). And so on. Of course, ultimately you can just use everything from our engine, nicely integrated - but the point is that you don't have to.


Compile everything with simple make inside the kambi_vrml_game_engine/ subdirectory. Compile examples and tools by simple make examples.

Last updated on June 26th, 2008

#VRML engine #VRML modeler #3D modeler #3D #VRML #engine #world

Add your review!