Tag Archives: C

Individual Research Project – Genetic Algorithms

The major project of my final year was for my dissertation. I chose to research the effectiveness of dynamic learning algorithms in providing an adaptive, real-time finite state machine in a game environment. After doing a literature review to get up to speed on Bayesian networks, artificial neural networks and genetic algorithms, I chose to focus my research on the latter. I felt genetic algorithms could offer a working solution, and I was interested in programming one and seeing for myself exactly how it would work.

Continue reading →

High Performance Computing – Parallelisation of Pattern Matching using OpenMP and MPI

This final year project focussed on using the OpenMP and MPI frameworks to parallelise an implementation of the straightforward pattern matching algorithm. The project was scored purely on the speed of the solutions (assuming the generated matches were correct), and in the module overall I scored a strong first class mark of 83. I have put the code on my GitHub for your perusal.

Continue reading →

Week 10 – Go Right

Week 10 marks an exciting first for my Game a Weeks; happy collaboration. Please indulge in Go Right – download and play here.

The controls are explained in-game. If you absolutely have to mute the audio, press the M key.

Credits

I’m going to start this post off by giving a huge shout out and thank you to the four other people who contributed to the game.

Tom Lamey is the enigmatic hero responsible for the lovely character design and great spritesheets that bring the protagonist to life. He also advised me on the general look of the game

For the music I counted on the talents of the insatiable Jack Drewry. He brought together a couple of rag tag musicians to aid him, collectively they’re known as Squid Tooth, but separately they go by their birth names of Jack, Laurie and Rowan.

I hope you agree that these four all helped raise the bar on my games with their contributions. I’ll talk more about how it all came together below.

Continue reading →

Week 9 – Colourful Threes

And now for something completely different. Download and play here.

Arrow keys to try a slide, space bar to confirm it. Imagine it’s on a phone screen; pressing right swipes right, and so on.

Some bad news: this game is going to be incredibly colour-blind unfriendly. I wanted to have letters on the cards to give you a fighting chance but I ran out of time. I’m so sorry.

Continue reading →

Aspects of Game Engine Development – 2D Physics Engine

In third year we had an entire module dedicated to the different components that make up a complete game engine. The assessment for this module was based entirely around a solo project, where we had to choose one aspect of a game engine and develop it. I chose to develop a 2D physics engine, as I was interested in understanding how each step of the process worked, from the simulation of rigid bodies through to collision detection and resolution.

Continue reading →

Agile Development – Collada Importer for XNA

One of our modules in third year was focussed on exploring agile development techniques, culminating in a group project that we managed in an agile fashion, using scrum. We had to treat our tutors like clients, asking them about what they wanted from the solution, creating user stories from these requirements and turning them into backlog items. The project itself was to create a Collada model importer for XNA, able to import the model’s skeleton, mesh, skinning and animation data, packaged with an app to view these models and outputting complete logs of the importing process.

Continue reading →

Week 5 – Physical Breakout

This is the fifth week of my Game a Week challenge. I didn’t have a clear goal this week but things really came together once I started experimenting on Friday, and you can download and play the result here.

The paddle follows the cursor, use a and d (or left and right cursor keys) to tilt the paddle slightly. Use the ball to destroy the blocks! I’ve clearly taken inspiration from the Breakout (or Arkanoid) series, but added a physics-y twist.

Continue reading →