SaM3d!
A cross-platform library for 3d
applications
based on OpenGL and SDL
Goals
  - provide a set of easy-to-use, platform independant functions for
3d applications (mostly games & demos) ;
 
  - solve a few remaining portability issues (SDL and OpenGL take
care of 99% of portability problems, but there are still a few
details...).
   
Features
SaM3d! is in very early stages, so most of the features are planned.
In the current version :
  - on-the-fly display mode (fullscreen, windowed) change ;
 
  - render on multiple viewports ;
   
  - rendering loop with input handling and time-based movement ;
 
  - texture manager with predefined texture classes (textures read
from file, lightmap) ;
   
  - file I/O based on SDL_RWops (can read files from a ZIP archive) ;
 
  - performance counter (fps, triangles per frame...) ;
 
  - math library (classes for vectors, quaternions, matrices,
frustum) ;
 
  - console and logging system.
 
Under development :
  - meshes, vertex arrays ;
 
  - BSPs, PVS ;
 
  - lua scripting.
 
Supported Platforms
SaM3d! applications compile and run under:
  - Linux ;
 
  - Windows (compiles using MinGW).
 
Download
You can download the sources for SaM3d! from the CVS repository on
SourceForge using the following commands (Unix environment).
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/sam3d login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/sam3d co SaM3d
If you are using Windows(TM) you really should try TortoiseCVS.
 For those who really do not want to use CVS, you can download a snapshot (sep 3 2003): tgz, zip.
Credits
I would like to thank :
  - Sam Lantinga for the incredible SDL library ;
 
  - Fabio "Snowdruid" Franchello who wrote the "NeHeGL SDL codebase" I used to start with OpenGL ;
 
  - Jeff Molofee for his fantastic site about OpenGL ;
 
  - did I forget anyone ?