Developer: Codemasters
Release Date: May, 2012
Tech: EGO Engine, C++

DiRT Showdown is the high-octane sequel to DiRT 3. Following on the footsteps of it's predecessor, this game focuses on destruction and carnage for all out arcade-action.

I took responsibility implementing the new sweeping camera effect along with the slam-down transitions for the main-menus. In addition to this, I stepped into a more active role in mitigating clashes between design and art when it came to usability vs. aesthetic, helping balance the function over form approach without comprimising the artistic vision.

As with DiRT 3, my responsibilities would also cross into the underlying systems giving me a great deal of exposure and experience covering a broad range of technical areas.

I also took the time to improve upon many of the existing system I wrote for DiRT 3, adding new functionality and improving them for use in future projects along with working on several of the more innocuous screens.


Developer: Codemasters
Release Date: May, 2011
Tech: EGO Engine, C++

DiRT 3 is the third installment in the acclaimed rally racing series, following in the footsteps of the earlier Colin McRae rally games.

I worked primarily in the frontend group, covering the ambitious career interface (comprised of spinning and unfolding tetrahedrons to represent the players progression) and the On Screen Display for in-race along with several of the more innocuous screens.

Primarily my work was related to the User Interface and pipeline work to support the UI Art team. However, my responsibilities would also cross into the underlying systems (such as the stats tracking system, or the underlying career progression and gametypes) giving me a great deal of exposure and experience covering a broad range of technical areas.


Developer: James Strain (Me!)
Release Date: July, 2011
Tech: Android, Java

"Motion Tracker" is a fun Android app designed to replicate the Motion Tracker interface as seen in the popular movie "Aliens".

It was developed over a week to help introduce myself to the process of Android development and familiarize myself with the Android App/Activity lifecycle and APIs.


Developer: Realtime Worlds
Release Date: June, 2010
Tech: Unreal Engine, C++, wxWidgets

APB (All Points Bulletin) is a city-based community game where players choose between playing the criminals or enforcers trying to catch the criminals.

I started as part of a two man team working on the in-game Music Editor that allows players to create their own custom tracks. As my experience with the game extended further, my responsibilities expanded to include ownership of both the Music Player (an in-game iTunes like interface and music matchmaking system), along with the vehicle customization studio.

Primarily my work was related to the User Interface and pipeline work to support the UI Art team. However, my responsibilities would also cross into the underlying systems (especially the Music Player and Music Studio), giving me a great deal of exposure and experience covering a broad range of technical areas.


PP++ Game Engine Framework
1st Class with Honours
Tech: OpenGL, OpenAL, C++, libPNG, libVorbis, Bitmap Font Generator

PP++ is a game development framework aimed at helping to teach the core skills of videogame programming, but also providing a simple and lightweight framework that these same learners can make use of to create their own games.

The idea was born from time spent teaching game development. My students knew the basics of programming and game development from kits like GameMaker, but were unable to find a combined set of tutorials and code that would help them grow into developers of proper games.

PP++ was made to fill this gap and provide teachings in teh key areas of core game development (Graphics, Audio, Input and Resource Management). It was completed using a fully iterative development process, including the use of centralised source control, daily builds, documenting the design process and development of tutorials to help users learn the library.

Platform: DS
Tech: devkitPro, Maxmod, C, PowerUp++

Once I reached the end of my degree project at University, I decided to take the code I had written forming P++, and to real-world proof it by using it for it's intended purpose; making a game.

In one month I took the previously Windows only P++, and began porting it to the Nintendo DS platform, at the same time creating image resources and writting game specific code for handling the 2D Hardware on the DS.

Due to my gainful employment and work on other projects I've only been working on the core engine, so contained here are a few screenshots along with a short video of the improved graphics tech.


Fingergun Studios
Role : Lead Programmer
Projects : In Progress

Fingergun Studios represents a joint venture to design and create new and exciting game experiences.

Currently we are working through several designs, prototyping and exploring the ideas to find something that we believe to be both creatively challenging and worthwhile to pursue.

Content Pending Designs
Vista Style Address Bar for .NET 2.0
Tech: C#, .NET 2.0, Windows Forms
Version: 1.0

Windows Vista brought about many new UI controls in it's effort to simplify things for end users, and one of these was a new path navigation control for use in explorer. However, Microsoft did not make this available for other programmers to use.

This sample is an implementation of the design using standard .NET components wrapped into a simple to use control. Its design uses a simple yet extensible node based design so you can take the control and extend it to navigate other nierarchical namespaces.

A WPF/.NET 3.5 Version is currently in development, along with an improved file system navigator and registry node navigator.

Art

Outside of programming, I like to spend time being creative in a more traditional sense. Collected here are a few of my favourite pieces for your viewing pleasure.