About
SabreGL is an Irrlicht based 3D python module, designed to make 3D applications (primarily games) very easy to create. It takes a large amount of work out of 3D programming, providing simple commands for performing most common tasks. As an example, with only 7 lines of code you can load a fully textured BSP model (Quake's level format) and walk around with automatic sliding collision and gravity.
from sabregl import *
initscreen(800, 600, 32) #Create an 800 x 600 window with 32 bit colour depth
loadzip("game_package.pk3") #Load a compressed game package
level = loadmodel("level.bsp") #Load the level from the compressed package
autocollide(level, (30, 50, 30)) #Make the camera automatically collide with the level (giving the camera a size of 30 x 50 x 30)
while 1: #Enter the main game loop
sync() #Render the scene and handle input
Features
(As of 3rd February 2007)
- Choice of rendering engine: OpenGL, DirectX 8, DirectX 9, Irrlicht Fast Software Renderer, Apfelbaum High Quality Software Renderer
- Support for GNU/Linux and Microsoft Windows (MacOS X support is possible if anyone wishes to compile it under MacOS X)
- Support for the following model formats: 3ds, obj, csm, dae, dmf, oct, irr, x, ms3d, my3d, mesh, lmts, bsp, md2
- Height-mapped terrains
- Skyboxes
- 2D GUI
- Collision detection
- Water effects
- Lighting
- Particles
If you're looking for direct python bindings to Irrlicht try Venom, SabreGL is intended to be a greatly simplified interface to the Irrlicht engine.
Download
For now SabreGL is only available directly from the CVS repositories. It can be checked out with the following command:
cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/sabregl co sabregl
Documentation
Currently the only available documentation is the built-in pydoc.