Wednesday, August 3rd, 2011

FPS – C++ OpenGL

In my “3D Graphics & Audio 1″ subject, on the IT Carlow Games Development course in secound year I  studied OpenGL. The awesome Ken Power dot product master, teachs us to be Ninja Graphics programmers. Over the year, we have completed two projects, and many practical assignments for this class. One was a 2D lunar Lander Clone, and the second was this project a 3D First Person Shooter.


The game is very wolfenstein seic, its map is generated from an array of different symbols that define the maze and doors. The general idea is that you most find a weapon and a key to escape the spaceship. There are various billboarded enemy’s who move toward you when your near them. The maze is completely textured and light using standard OpenGL light caluations. FMOD was used for the sound of the gun firing and for the doors opening.

Video of Game

Learning out comes

I learnt lots from completing this project and helped me become more profinenet with C++ and OpenGL. I got awarded 100% for my project which I was quite pleased about. I really enjoyed the project and graphics programming in general. After the project I started work on my own 3D FPS but this time from complete scratch  which you can see on my GitHub.

Technologies & Skills used

  • C++
  • OpenGL
  • FMOD
  • Graphic Programming


Sunday, January 23rd, 2011

Multithread C Concurrent Simulation

Wa-Tor is ecological simulation, described here ( team of four programmers was tasked with implementing a serial version of the simulation written in C99 running on Ubuntu. Then using OpenMP to create a concurrent, multi-threaded version running on up to 8 cores. Finally we produced graphed benchmarks to identify, mutex locking, false sharing, cach ping pong and various other problems associated with parallel programming. We then used this benchmark and profile information to help us identify ways we could improve our code to get the most out of all the cores at our disposal. Most of the work was done with all four of us huddled around one computer doing paired programming.

Source code

Checkout the code on github


  • C99
  • OpenMP
  • GCC complier
  • Vim
  • GDB and Valgrind for Debugging



Tuesday, May 18th, 2010

Lunar Lander – OpenGL C++

In my “3D Graphics & Audio 1″ subject, on the IT Carlow Games Development course in second year we where given two projects to do one a 3D First-Person Shooter and the other a lunar Lander clone. Above are some screen shots from my project.


The terrain is randomly generated and has various different difficulties. My game has some basic physics for the lander and some particle explosion animations for when the lander cloides with the terrain. There are also enemy spaceships which shot bullets which try to lock on to the player ship.

Technologies & Skills used

  • OpenGL
  • C++
  • Physics

All content © Copyright 2017 by Ciarán McCann.