Portfolio of Programming Projects |
|
| Index: |
|
An XML "recipe" for every Spore creature is stored on the Spore servers and is publicly accessible via the Spore API. The 2D-fier reads in this XML information and renders animated 2D creatures using Flash in a web browser. The XML recipe can be interpreted in different ways to achieve various stylizations. A "coloring book" style is shown below. The 2D-fied creatures can also be painted using a procedural texturing system much like that in Spore. Examples are shown below. This work was presented at SIGGRAPH 2009, "Spore API: Accessing a Unique Database of Player Creativity" |
![]() The 2D creatures are articulated as ragdolls using hierarchy information available in the creature XML. Here are some more 2D-fied creatures: ![]() back to the top |
Spore 2D-Fier: Stylization |
|
![]() |
|
Spore 2D-Fier: Procedural Painting |
|
![]() |
|
As a part of Spore's core engine team I helped deliver our procedural texturing and asset baking systems
|
|
Andy Warhol Print for Spore Creatures (compress, threshold, colorize and tiled rendering) Film Noir filter (threshold and mix in noise grain) |
|
After many iterations and approaches, I was able to develop a depth of field system for Spore that performed well on a wide variety of graphics hardware. I render the scene twice but split it into two parts in each render by offsetting the near and far planes of the viewer. The "far" scene is rendered into a texture, processed for atmospherics and blurring and composited with the "near" scene. The plane at which the split occurs is dynamically tuned based on camera height on the planet. |
|
I wrote all the off-screen capture systems for Spore such as screenshots, thumbnails, super high res renders etc. One of the coolest captures in Spore is the Edit Capture. Every time a player makes or edits something in Spore, a 36 frame GIF summarizing their creative choices is automatically generated. Below are some examples. Our fans loved this system and made creative uses of it like re-enacting Pong and Tetris! |
|
Another cool capture technology I added to Spore is a one button panorama capture tool. The panoramas can then be rendered in a Flash app I developed using Papervision 3D. Here's one such panorama: |
|
|
|
I pitched this project at Carnegie Mellon University with Kyle Gabler and Kyle Gray. See experimentalgameplay.com Blackout Bunny Blaster
Cytoplasm |
Real Time Graphics: Cg shaders |
Subdivision Surfaces Tool |