animation, graphics, games, and other projects

“Cursed” (undergrad research game)

This is a research project I did as an undergraduate at Carnegie Mellon University under the guidance of Jessica Hodgins.  The main goal is to automatically generate motion interactively from a motion capture database. I eventually took some of the research work and created a small game with another programmer.

Details | Game DescriptionMovies | Screenshots | Demos

Technical Details
Some technical details on the animation system can be viewed in the small presentation I created for a poster session.  You can view the HTML version or the original PowerPoint version.
My system was originally derived as a combination of some ideas from some current animation research papers, but with the direction of extending them for the responsiveness requirements of games.  A good starting point to understanding the ideas behind generating a motion graph automatically can be found in these SIGGRAPH papers:

Motion Graphs
(Lucas Kovar, Michael Gleicher)

Interactive Motion Generation From Examples
(Okan Arikan, D.A. Forsyth)

Interactive Contol of Avatars Animated With Human Motion Data
(Jehee Lee, Jessica Hodgins)


Game Description
I recently created a small game (with the help of an additional programmer – Eric Leese) to showcase some the technology of my research.  It was created in about 3 weeks on top of my existing framework. The game is titled Cursed and includes some of the following features:

·Motion Captured Animation System – up to 4 motion streams blended onto the character simultaneously.  Animation is synthesized automatically in most cases.
·Quake3 Level Loading / Rendering (BSP tree + PVS + lightmaps + meshes)
·Custom Shaders
·Collision Detection (against the BSP tree, character / character, character / sword, camera)
·Third-Person Detached Camera
·Event-Driven Triggering System for Scripting Game Events
·3DS Character Model Importing
·Data-Driven Design (both in animation setup and level design)
·Debugging Console Featuring Command History, Serialization, Tab Complete, Custom Commands, as well as ease of Exposing Most Any Program Variable
·Light-mapping and Texture Animation
·Support for Analog Joystick Control and the P5 Tracking Glove
Music / Sound Effects throughFMOD

A more detailed game description and postmortem is available here.


The opening sequence of the game showing off the alpha-blended effect shaders we wrote.  Also includes a small look at the gameplay.


I wrote an input plugin for the game to support the P5 tracking glove for attacks.  You can swing your hand and the character will swing the sword accordingly!!



This shows the triggering of the boss animation sequence along with at some gameplay for the boss.  The boss teleports around the arena randomly and laughs at the player as he tries to find him!


A look at the end of the game – the boss is defeated.


Some random gameplay.  This particular sequence shows off some of the camera and collision code well.


Some more random gameplay to look at.




Cursed: Alpha Demo Release 1.0 (~52mb)

old research demo  (~8mb)