3D Race Game with Bullet Physics


This is a 3D Racing Game that I worked on while in my final year of university, I worked on it with a team of 9, mostly artists. I was the lead programmer, I worked with two others one who was an AI programmer and the other who did the User Interface programming such as HUD and Menu's.

This is a vastly improved version of the engine I wrote below, it contains an improved scene node graph, particle engine, fullly implemented physics engine, ghost camera system and more.

I really enjoyed this project and would love to do it again only this time using Bullet Physics with the CarX Technology and DirectX 10 to make use of more complicated shader systems.

Made this in my final year of university.

Source Code & Binaries:
gamesdev_src.zip




PhysX Rude Goldberg Machine


This is an implementation of the PhysX library, I produced a small Rude Goldberg machine which demonstrades some of the fudemental functionality in the PhysX library, such as contact reporting, loading static mesh, generating convex hulls etc.

Made this in my final year of university.

Source Code & Binaries:
gamesphysics_src.zip



 

DirectX 10 & HLSL Bump Mapping

As part of my final year at university I had to research and implement Bump Mapping algorithms using the DirectX 10 pipeline. We studied the DirectX 10 pipeline in great deal from a performance perspective, looking at bottle necks and different methods of injecting data into the pipline.

I produced four bump mapping simulations, Parallax Occlusion Mapping, Parallax Offset Mapping, DOT3 Bump Mapping and finally one of my own experimental bump mapping techniques that I came up with for mobile hardware.

The idea behind my custom version of DOT3 Bump Mapping is to eliminate the need for a normal map, all you need is a diffuse map and then to specify a few values such as amount of emboss etc. The idea is that the normal map is generated in real time on the graphics card using the derivitive of each pixel like a simplified sobel filter. Not only is it fast, adding no more performance cost than DOT3 Bump Mapping (~16 extra instructions) because of the reduction in pipline reconfiguration and memory buss bandwidth great performance increases are gained. The resultant bump mapping quality is slightly reduced however on the small screen that a mobile has the reduction in quality is almost negligible.

Made this in my final year of university.

Source Code & Binaries:
rtg_src.zip




Urinal Simulator

This is a Game I wrote for the GP2X, although the source distributed below is Windows. This was produced for a final year module at University.

The note worthy aspects of this code are the extremely efficient memory manager I wrote for it, which uses a 1 byte header and is cache alligned. The memory manager is optimized for arrays of a fixed objext type, although it can be used for arrays of varible object types making it usefull as a multiple container array.

Also there's some cool smart pointer stuff in there, basic 3D projection, basic 3D sound, etc.

Made this in my final year of university.

Source Code & Binaries:
ags_src.zip



GS2 Race Game


GS2 Race Game Screenshot

This is a techdemo showing off my game engine, it shows off some basic physics, terrain and texture generation and dynamic sound synthesis. A more impressive demo to show off the engine is currently in development.

The engine uses DirectX 9 and OpenAL but is easily portable to OpenGL.

The GS2 Race Game Engine supports the following features:

  • Key Framing
    - Linear Interpolation
    - Smooth Step Interpolation
    - FCurve Bezier Interpolation
  • Oscillators
    - Additive Sample Generation
    - Wave Table
    - Wave Table Anti-Aliased
    - Low Frequency Oscillators
    - Frequency Modulation
  • Physics
    - Particle Physics
    - Projectile Physics
    - Kinetic Physics
  • Cellular Automata
    - Gaussian Random
    - Linear Random
    - Procedural Texture Generation
  • Bezier Paths
    - Cubic Bezier Paths
    - Time to Distance re-parameterisation.
  • Vector2 & Vector3
    - SSE2 Intrinsic
  • Colour Conversions
    - HSL
    - HSV
    - YUV
    - RGB
  • Collisions
    - Sphere
    - Axis-Aligned Box
  • Scene Node Graph
  • Camera System
  • OpenAL Sound System
  • Random Number Generation
  • Quaternions
  • Matrix Library
  • Math Library
  • Quad Tree
  • Content Management System
  • Direct3D 9 Renderer


Made this in my second year of university.

Download Win32:

http://www.mrpuzzle.org/files/gs2.zip

Source Code:
http://www.mrpuzzle.org/files/gs2_src.zip







Mushroom Roulette


mushroom roulette screenshot

This is a puzzle game where each level is the puzzle to be solved, you have to solve the puzzle in each level collecting the most score points possible, depending on how you solve the level will define just how much score you manage to collect. More info: http://www.mushroomroulette.com/

This game uses SDL to draw to the screen buffer and write to the sound buffer. The game has been ported to the GP2X and Dingoo A320 handheld devices, and the code is written to be ported very easily.

The game comes with a map editor allowing player to create their own level packs full of new puzzles to solve.

Made this after my first year of university, during summer.

Download Win32:
http://mushroomroulette.com/files/mush_win32.zip

Source Code:
http://mushroomroulette.com/files/winhapi_src.zip









Trax Puzzle


teapot hunt screenshot

This is a puzzle game concept I created for my Final Major Project in college, the idea is that you have balls of energy spawning at the top of the game and they have to work their way through a maze of pipe tiles into the correct collection holes at the bottom. Each level you complete you get a bonus function that allows you to delete a tile, add a new tile, give you a new set of tiles etc. The game was designed to be language independent so I use mostly just symbols to navigate the game and try to keep the use of language specific characters to a minimum.

Made this for college, final year.

This game is incredibly similar to a game released by UK games company Blitz Games ... a year after the release of Trax. It's basically Trax, but maybe a little bit more fun if your not a mega-nerd. :p
http://www.atlus.com/droplitz/

Download Win32

CD Key: cb837d032rjf
Source Code







Connect Four


connect4 screenshot

This is a replica of the milton bradly game Connect Four, you play against the computer AI with optional difficulty.

Apologies for the use of single spaces rather than tabs in the source code. This is a practice I no longer use.

Made this for university, first year.

Download Win32
Source Code







Nexus


nexus screenshot

This is a 3D techdemo using Ogre3D and OpenAL, here what I do is try to maximize a small amount of space. The inspiration comes from the game Prey.

Your in a space rocket orbeting around the sun, you play as a pawn on the chessboard and something on the ceiling.

Made this during my first year of univeristy.

Download Win32
Source Code







Orbup


orbup screenshot

This is a puzzle game where you have to match the colours in the top left corner of the screen with colours on the sine terrain, so if the colours sequence says 2 blues and 1 red you have to only have those three colours on the sine terrain. Each round you get given 3 - 6 new colours and you can store 20 at one time in your personal colour bank.

Made this sometime around when I was going to college in my free time.

Download Win32

Source Code







Alkatraz


alkatraz screenshot

This is an online multi-user chat room I programmed in Visual Basic 6 around the age of 14-15. It has 6 different rooms that users could walk around in and chat to other users, it's based on the Alcatraz prison and has a small storyline for users to explore and complete with friends.

Download Win32

Download Source







Teapot Hunt


teapot hunt screenshot

This is a small techdemo using Ogre3D, you play as a teapot tank that fires rockets out of it's spout, your mission is to catch the red teapot who is using the tree's to hide from you. You can drive the car by walking into it and pressing 'E'.

Made this in college, as part of my free time.

Download Win32







Half-Life 2 Modifications


teapot hunt screenshot
teapot hunt screenshot

Sometime in 2007-2008 roughly I developed two source engine modifications entirly independentally, this includes all programming modifications and source code. Due to my limited 3D Modelling & Textureing skills this is where the moficiations lacked the most but the modifications to the game flow are very distinct in both modifications.

First Modification:
http://www.moddb.com/mods/half-life-2-instagib

Second Modification:
http://www.moddb.com/mods/half-life-2-rave