Sausages for Crystal Space

Want to create something like this:

If you do read on. This is the official Crystal Space sausages web page. Here you'll get the code to do interactive Crystal Space sausages.

Original AVI file: crystalspace_bug.avi (DivX).


Some people say I'm somewhat obsessed with sausages. But that is not really the case. The aim of this project for me was to get into Crystal Space but more even into 3D programming. I'm satisfied with the knowledge I gained and will now rest on the sausages.

The sausages class is basically a tool that generates meshes out of a given shape and path. The mesh and path can be modified (rotated, scaled, etc.) in any way you see suitable. The result is a mesh data that is fed to the Crystal Space's genmesh interface. To put it other words: for creating lofted shapes. Observe the pictures, watch the video. You'll understand what the sausages can do for you.

The code

As it stands the sausages are at version 0.4. Get the source: sausage-0.4.tar.gz

Code is distributed under the GNU "lesser" public license (GNU LGPL).

Many classes here are usable as "libraries" for your own personal projects. Like sausage.{cc,hh} and ellipse.hh. Use them. But remember they are under the GNU LGPL license.


  • Released sausage-0.4 (2003-07-30)
  • Updated code to CVS snapshot cs-2003-07-28.083700.tar.bz2, notably the portal code had changed
  • Made snake a bit longer
  • Released sausage-0.3 (2003-07-25)
  • Added sausage_multimaggot
  • Lots of cleanups


Made on Linux, should compile there with ease. You might want to set the correct CRYSTAL environment variable. At least one person got it working on Windows VC using the STLPort.

Works currently with only the CVS version of Crystal Space (tested using the cs-2003-07-28.083700 CVS snapshot).


Aside from the bug on the first picture of this page there is one more technical anomaly that has plagued me. For me it looks like this.

Some people have reported it crashing after just a while of running. They say the mesh disapears and a fraction later the application crashes. I have no idea what causes this.


Just run the created demo programmes.

Controls (mix for different demos):

Page up, page down (Rotate up, down/Move up, down) Left, Right keys (Rotate or turn left, right) Up, Down keys (Forwad, backward/Faster, slower)
Change style (textures, lighting and fog settings):
Maggot control (in multi_maggot):
+ -

How sausages came to be?

Please observe the lifecycle of sausages as I was studying Crystal Space and 3D programming:

Copyright © 2001-2024 Indrek Mandre