Porfolio Contact me

PORTFOLIO requires flash for videos

PaddocksPaddocksPaddocksPaddocksPaddocksPaddocksPaddocksPaddocks


TREE GENERATOR PLUGIN
 

Overview:
A plugin for Maya which uses L-systems to procedurally generate 3D trees. Individual, independent project.

Language/API:
C++, Maya API, MEL

Software:
Visual Studio, Maya

Plugin features:
 • Network of branches
 • Random leaf generation
 • Branch/leaf Shading nodes
 • Nodes organized into layers
 • Create a mesh or curve tree
 • UVs created for meshes
 • Save/Load tree presets



Download Source Code
Download Plugin (32bit)
View Plugin Class
View Matrix/Vector Class

PADDOCKS
 

Overview:
A 2D tile-based game. Team project for the Academy of Interactive Entertainment.

Language/API:
C++, OpenGL, SDL, FMOD, XML

Software:
Visual Studio, Tortoise SVN, Maya, Photoshop

Personal contributions include:
 • Game board generation
 • 'Fog-of-war' algorithm
 • Player-board interaction
 • Fence placing (A* pathfinding)
 • Majority of game framework
 • Game board/tile graphics
 • Trees modeled in Maya



Download Source Code
Download Game
View Grid Creation Functions
View Pathfinding Class
View Sprite Class

CLOTH SIMULATOR
 

Overview:
A Cloth Simulator. Individual project for Deakin University.

Language/API:
C++, DirectX, HLSL

Software:
Visual Studio, Photoshop

My goal was to create a cloth I could either dynamically control or simulate under gravity. I chose Verlet Integration for simulating the cloth due to its stability.

To dynamically control the cloth, I used the keyboard to create directed forces on specific vertices.



Download Source Code
Download Application
View Cloth Class
View Particle/Spring Class
View HLSL Cloth Shader

3D ADVENTURE GAME
 

Overview:
A first-person 3D adventure game. Individual project for Deakin University.

Language/API:
C++, DirectX, HLSL

Software:
Visual Studio, Maya, Photoshop

This project made use of my own framework and code built on top of DirectX. All shaders I wrote in HLSL.

Models and textures are comprised of my own, Turbosquid and Creative Crash.



View Hand Class
View HLSL Static Shader

TINY TOON TANKS
 

Overview:
A 3D toon-shaded game. Individual project for the Academy of Interactive Entertainment.

Language/API:
C++, OpenGL, SDL, GLSL, Bullet Physics, FMOD, XML

Software:
Visual Studio, Maya,
Photoshop

For efficient rendering I used a simple toon-shader coupled with texturing toon lines on the actual models.

Physics was done with Bullet, using a custom collision filter callback to mask which rigid bodies collide with each other.



Download Source Code
Download Game
View Bullet Physics Wrapper
View Shadow Code
View GLSL Toon Shader

PLEMMINGS
 

Overview:
A 2D rehash of a retro game. Individual project for the Academy of Interactive Entertainment.

Language/API:
C++, OpenGL, SDL, XML, FMOD

Software:
Visual Studio, Photoshop

To achieve real-time erasing of the level I created an algorithm that modifies the pixels of the level's image to create an anti-aliased circle at the point of contact.

Collisions are per-pixel based on the amount of transparency of the level image.

Graphics are from the Spriter's Resource.



Download Game
View Erase Functions
View Collision Functions
View Portal Functions

PAINT CITY
 



Overview:
A 3D animation. Individual project for Deakin University.

Language/API:
Python, MEL

Software:
Maya, RealFlow, Photoshop, After Effects, Mental Ray

Particle simulation was done using RealFlow's Hybrido system and meshed out before exporting to Maya.

For the buildings, I used the plugin Kludge City and wrote MEL scripts to cut up and reorganize them.

I layered the paint shader network with ramp nodes to allow control over the building's colors.



View Python Multibody Loader
View MEL Shatter Wrapper
View MEL Paint Selector

THE GOOD, THE BUS AND THE UGLY
 



Overview:
Greg, the proud and pristine bus driver faces off against his eccentric arch nemesis, Butch. Team animation project for Deakin University.

Software:
Maya, Photoshop, After Effects, Mental Ray

My contribution to the animation was in the areas of rendering and environmental modeling, UVing, texturing and shading.

I received a storyboard from our 2D artist and from there created the scenes in Maya. Once scenes were finished, rendering was set up in Mental Ray with Final Gathering and Physical Sun and Sky for lighting.