Portfolio

I have selected a small subset of the work I have done for university and my own personal projects. It is a small selection so that you can see the quality of my work not the quantity. There are three projects a Flash Game, a physics simulation and my honours thesis.

  Blue Circle Defender 2010

Time to Develop: ~3 Weeks
Development Environment: Flex Sdk/Flash Develop

Blue Circle Defender is a small flash game. I became familiar with AS3 and Flash so that I could have some work to show people who were too busy to download an "exe" and to have some work that is reasonably platform/technology independant. It was designed to show a complete game. The development started with the simple concept depicted in the image. Then a prototype of the game was developed to test the idea. Once the prototype was completed a short but full game was developed complete with music, sounds, check points, dialogue, screen transitions and scheduled emission of asteroids.

Click Here To Play



 Optimisation of a Physics Simulation using Threads and SIMD instructions 2009

Time to Develop: ~3 Weeks
Development Environment: Microsoft Visual Studio 2005 Technology: C/C++, OpengGL, Win32 Threads 

 

The purpose of this assignment was to take an application, I choose an older physics simulation Globular Dynamics: A Connected Particle System for Animating Viscous Fluids (1989)” Gavin Miller and Andrew Pearce, and to optimise the simulation by using multithreading and SIMD. In my assignment I implemented  a thread group using  WinThreads and used MS SSE2 intrinsics, to reimplement vector operations. The results showed that on dual core or quad core computers that the optimised version outperformed the original version. The source code and documentation is provided below in addition a selection of sample files have been converted to html. Although the assignment was successful, the style and design of the code could be improved: using data-driven approach to configure the simulation instead of macros, reducing the use of macros to configure how the simulation is performed i.e. macros to toggle multithreaded.

Sample Source Code:
Executables Source Code - Documentation (user manual pdf) (technical report pdf)



Reducing Ineffectual Computations in Water Simulation 2009

Time to Develop: ~1 year Development Environment: C# for the application, LaTeX for the document and inkscape for the graphics.

This is my Honours thesis. Its goal was to find ways of reducing ineffectual computations in real-time water simulation. I came up with two main ways to do this: to put regions of water to sleep when they meet certain conditions and to approximate waterfalls using the volume of water being transfered instead of particles.
Unfortunently as time was limited I did not get to develop the thesis to its full potential, however, the work is complete as it is presented.

I have uploaded the full thesis pdf and a shorter technical report pdf.





Copyright © Jason Thompson