Sunday, October 26, 2014

A First Person Shooter Game Based on Ray Casting

I've just finished written a first person shooting game using ray casting techniques! It's been really exhausting especially considering the difficulty in getting the trigonometry calculations right, and coupled by the fact that I did not design the code structure particularly well (haha partly because I thought this is just an experimental project.. but hey now I know good design is always important).

What surprised me the most during the process of getting this done was that I never expected rendering 2D sprites on 3D environment to be very challenging! While the concept of drawing 2D sprites is dead simple (just pasting the asset on the canvas), getting it to look and feel right on the 3D camera seems to be very difficult, especially since I did not researched sufficiently on other better techniques to get it done.

In the end, I am pretty much satisfied with the end result (the game itself!) since it is way better than I have expected! The game itself was inspired by Doom, the classical DOS FPS games (may be not exactly inspired, by I did use one of their assets for this project hehe). Anyway, I've called this version I've written as Boom, and the game is now up and running on my github IO page:
Boom - A First person shooter game based on raycasting