Porfolio

PORTFOLIO

               


WARGAMING
 



Overview:
Multiple tool projects across several Wargaming studios.

Language/Software:
C++, Qt, QML, Javascript, Python, CMake, Git, Perforce, SVN, Plastic, JIRA

Experience in:
• Agile Development
• Research and development
• Windows and Mac tools

Contributions include:
• Shared Qt/QML framework
• World of Tanks Pipeline
  R&D and Commander Mode
• World of Warships studio
  technical support
• Tools package for an online
  multiplayer war game
View Website
View Qt/QML Framework

IMMERSIVE TECHNOLOGIES
 
Immersive Technologies Image from http://www.immersivetechnologies.com/services/Custom-Mine-Sites.htm Immersive Technologies Image from http://www.immersivetechnologies.com/services/Custom-Mine-Sites.htm Immersive Technologies Image from http://www.immersivetechnologies.com/services/Custom-Mine-Sites.htm

Immersive Technologies Image from Video https://www.youtube.com/watch?v=xHbrKiKsb6o Immersive Technologies Image from Video https://www.youtube.com/watch?v=Gk-tTpNC7Z4 Immersive Technologies Image from http://www.immersivetechnologies.com/news/Image-Library.htm
Overview:
Multiple releases of commercial simulation software used for training in mine sites.

Language/Software:
C++, C#, C++/CLI, Boost, DirectX, HLSL, Javascript, Git, JIRA, Unity

Experience in:
• Agile Development
• Full software life-cycle
• Refactoring legacy code

Contributions include:
• Unity and assimp integration
• Machine AI and physics
• Creating runtime tools
• Graphics and shader
  enhancements
View Website

CLOTH SIMULATOR
 
Cloth Simulator Cloth Simulator Cloth Simulator
Overview:
Real-time cloth simulator. Individual project for Deakin University.

Language/Software:
C++, C++/CLI, DirectX, HLSL

Features include:
• Cloth self-collision
• Octree partitioning
• Managed GUI
• GJK and EPA detection
• Convex hull generation
• Mouse ray casting
• Scene manipulation
• Dynamic control of cloth
• Verlet integration used
  for simulation stability
View Octree Partitioning
View Cloth Collisions
View Managed GUI

SHADER EDITOR
 
Shader Editor Shader Editor Shader Editor
Overview:
Scene for editing shaders in real-time. Individual independent project.

Language/Software:
C++, Boost, Qt, DirectX, OpenGL, HLSL, GLSL, Maya, GPU Shader Analyzer

Features include:
• Toggling render engines
• Real time shader editing
• Shader fragment linker
• Shader assembly output
• Procedural terrain
• Post processing effects
• Multithreaded Qt GUI for
  scene manipulation
View Base Shader
View Water Shader
View Fragment Linker

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

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

Plugin features:
• Network of branches
• Random leaf generation
• Custom shading nodes
• Tree organized into layers
• Create a mesh / curve tree
• UVs created for meshes
• Save / Load tree presets
View Plugin Code
View MEL GUI Script

ACTION AT SEA
 
ActionAtSea ActionAtSea ActionAtSea

ActionAtSea ActionAtSea ActionAtSea
Overview:
Online multiplayer party game. Team project for Academy of Interactive Entertainment.

Language/Software:
C#, Cg, Unity, Photon Networking

This project was initially prototyped as a single player 2D game and from feedback progressed into an online multiplayer 3D game.

Personal contributions:
• 3D Fog-of-War
• Minimap and GUI code
• Matchmaking and lobby
• Gameplay networking
View Fog-Of-War
View Networking

TINY TOON TANKS
 
Tiny Toon Tanks Tiny Toon Tanks Tiny Toon Tanks
Overview:
A 3D toon-shaded game. Individual project for the Academy of Interactive Entertainment.

Language/Software:
C++, OpenGL, GLSL, Bullet Physics, FMOD, Maya

Physics was achieved with Bullet Physics using a custom filter callback to mask which rigid bodies will collide together.

The tanks are replaced on destruction by sectioned rigid bodies to give the appearance they are breakable.
View Bullet Physics Engine

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

Language/Software:
C++, OpenGL, SDL, FMOD, Maya

Paddocks involves placing fences to collect resources and spaces on a game board.

Personal contributions:
• Game board generation
• Fog-of-War algorithm
• Player-board interaction
• Pathfinding for fences
• Board and Tree graphics
• Leader for team project
View Fence Pathfinding