Nodescope2012-2015Utility (Windows, Android)
A tree visualisation tool that allows you to see how big things are proportioned into little things. Handles various
types of trees (eg. disk usage, count of lines of source code) and supports adding new types. Has nice animations when
navigating around the tree. It used to be called Periscope but this happened.
I originally wrote this to investigate where the big parts of a codebase are, and to try and give more visibility into the code for the non-technical people at work, but the framework has proven useful in other situations too (particularly for seeing what's filling up my hard drive and phone).
I originally wrote this to investigate where the big parts of a codebase are, and to try and give more visibility into the code for the non-technical people at work, but the framework has proven useful in other situations too (particularly for seeing what's filling up my hard drive and phone).
Made using C++/Java/Windows API/Android/OpenGL.
Dependency Checker2012Utility (Windows)
This was a project I worked on as part of a team of two for the inaugural Navman "Hackathon" - a 24-hour coding odyssey.
The tool figures out all the file-to-file dependencies in a directory tree of source code, and displays them in a meaningful
way, highlighting cyclic dependencies and dependencies that violate given rules. It also produces detailed diagnosis of the bad
dependencies to allow them to be fixed.
The project was split into two parts - the parser which produces a big XML file detailing all the dependencies and processes files documenting which dependencies are allowable, and the visualiser which analyses the resulting graph and displays it in an interactive way. I worked on the latter.
The project was split into two parts - the parser which produces a big XML file detailing all the dependencies and processes files documenting which dependencies are allowable, and the visualiser which analyses the resulting graph and displays it in an interactive way. I worked on the latter.
Made using C#/Windows Forms/Perl.
Poultry Temperature Manager2011-2012Game (Android)
This project was to take Poultry Temperature Manager (see down there),
convert it to platform-independent C++, and release it for Android. Some new features made their way in,
such as sound effects.
Made using C++/Java/Windows API/Android/OpenGL/OpenAL.
Planet2009University project (Windows)
A planet with water, sky and grass. You can walk around on it. Does reflections of the terrain on the spherical body of water
(evidently a non-trivial thing to do - standard methods for reflection don't work). Has
dynamic level of detail on the terrain.
Made using C#/XNA/HLSL.
Blueprint2009Game (Windows)
In this game you control a falling blue ball by drawing lines on which it bounces and rolls.
Use your fine drawing skills to make the most of gravity and momentum to get the
ball to the end while avoiding obstacles.
Made using C++/Windows API/Direct3D.
Beast2009University project (Windows)
My honours project. Aims to teach people things about rhythm in music using a Guitar Hero drum kit and
various gameplay modes.
Abstract
This project looks at developing an educational video game focused on teaching rhythm, drawing on existing edutainment techniques. The game is targeted to teenagers/adults of average musical/gaming competence, and takes a learn-by-doing approach by making use of existing electronic drum kit hardware to get the player involved and to increase 'coolness' (an important, often neglected factor in edutainment). The end goal is to increase the rhythmic competency of the user so they will see greater possibilities in/get greater enjoyment from music later.
Abstract
This project looks at developing an educational video game focused on teaching rhythm, drawing on existing edutainment techniques. The game is targeted to teenagers/adults of average musical/gaming competence, and takes a learn-by-doing approach by making use of existing electronic drum kit hardware to get the player involved and to increase 'coolness' (an important, often neglected factor in edutainment). The end goal is to increase the rhythmic competency of the user so they will see greater possibilities in/get greater enjoyment from music later.
Made using C++/Windows API/Direct3D/ASIO.
Graph thing2009University project (Windows)
Information visualisation project. Draws various kinds of graphs of the student enrolment data
for the Univerity of Waikato Language Institute. Only included here because it looks cool and makes me look a
bit mathematical. Done with Daniel Tebbutt.
Made using C#/Windows Forms.
Poultry Temperature Manager2009Game (Windows)
This game was made with two other people (Daniel Tebbutt and Robert McKinnon) in 48 hours as an entry
for the 2009 Global Game Jam. We won the local (Hamilton)
competition with it.
In the game you must generate heat from chickens by pushing them around with the mouse, to keep them close enough together so that they won't freeze, but far enough apart that they won't spontaneously combust.
Then there's the music.
In the game you must generate heat from chickens by pushing them around with the mouse, to keep them close enough together so that they won't freeze, but far enough apart that they won't spontaneously combust.
Then there's the music.
Made using C#/XNA.
Open Fire2007-2008Game (Windows)
This game is a 2D top-down shooter, which is mostly just an engine because of the lack of things like
levels, gameplay and storyline. I spent a long time working on it
though, and maybe it's vaguely sophisticated?
Some of the more important features are: waypoint-graph-based enemy AI, generalised map/object/particle simulation, custom GUI system and a slightly flash-like animation system.
Some of the more important features are: waypoint-graph-based enemy AI, generalised map/object/particle simulation, custom GUI system and a slightly flash-like animation system.
Made using C++/SDL/OpenGL/OpenAL.
Dancing Man2008University project (Java)
A program for creating stick figure dance routines. You can create different
moves and piece them together, then play back the dance synchronised to the beat of the music. I worked on this in
a team of five people.
The GUI was the general area of the project I did the most work in. All the controls and menus etc. were coded from scratch and rendered in OpenGL to get that "cartoon" look.
Java sucks, so you'll have to watch it on YouTube.
The GUI was the general area of the project I did the most work in. All the controls and menus etc. were coded from scratch and rendered in OpenGL to get that "cartoon" look.
Java sucks, so you'll have to watch it on YouTube.
Made using Java/OpenGL.
Ninja Battle2008University project/game (Web)
A prototype for a small game made as part of a larger university project, this was my first experience with Flash.
The larger project was a group project made by me and a few graphic design students; this game was my part of the project. Some of the fighters weren't drawn by me.
The larger project was a group project made by me and a few graphic design students; this game was my part of the project. Some of the fighters weren't drawn by me.
Made using Flash/ActionScript.
Series of Tubes2006-2007Game (PSP)
This was a Google personalised home page puzzle gadget that I enjoyed a lot and wanted to play in a portable
fashion, so I rewrote it for the PSP.
The original gadget is by Wei-Hwa Huang from Google.
Made using C++/PSPSDK.