Carl Staaf


Master is a 3d modeler and animation package.  It is written in C++ and uses OpenGL for rendering. 

Feature set (partial):

  • Hierarchical, quaternion-based animation
  • Skinning
  • Configurable user interface
  • Mouse, keyboard, joystick input
  • Any number of viewports
  • Environment mapping
  • Real-world 3d object digitization - ask me about this one, it's cool :) Here's an example
  • Easy model creation. Here are some models and corresponding concept art.
Dark Visitor is actually one aspect of Master.  We designed Master to be both a toolset and a game engine, with this as its first game. Here's a short video (about 1 megs).  The following C++ code samples represent the basis for a design pattern we've found useful in developing Master. These code samples will not compile on their own, as they are extracted directly from a large project. They are simply intended to give you an idea of how I code. Loadable.txt defines a virtual base class for loadable items. Loader.txt defines a static template base class for a cached loading mechanism. Together these classes make it very easy to add, for example, a player class loader. Just make player_class inherit from loadable_class (player_class is then required to implement load() method) and create a new class player_loader_class which inherits from loader_template_class. Very little new code is required to add a convenient player loader.

Feature set (partial):

  • Octree space division
  • 1st person or 3rd person view
  • Scalable frame rates
  • Mouse, keyboard, joystick input
  • 3d sound
BOUNCE is a game I developed at Escape Factory.  It's a puzzle game with fun and realistic physics.
Evolution is a single-cell life simulation.  The goal is to show complex behavior emerging from simple rules via a genetic algorithm.  In this case, the dna of these "bugs" describes their movement patterns.  As generations pass, a clear distinction evolves between bugs that tend to spin in tight circles about a patch of highly concentrated food, and bugs that cover a lot of distance in regions of diffuse food.
Brain is an implementation of a specification for a genetic algorithm interface.  The specification was drawn up by my brother Anton, our friend Kipton, and myself.  It describes how a GA implementation can receive input and produce output.  This implementation of the framework, known as Brain, uses genetic algorithms as the artificial intelligence in Mortal Karlbat.  I wrote Mortal Karlbat as a blatant rip-off of Mortal Kombat, and inserted digitized images of my friend Roky and myself as the fighters.


Copyright 2004 Carl Staaf
All material on this site is the protected work of Carl Staaf
or its respective owner.