Projects

Below you'll find some non game related software projects that I have been involved in creating.

Master's Thesis - A Simulation Environment for Shotcrete Reinforcement

Spring 2009

In the field of construction engineering, in order to reinforce structural elements, concrete is often used. The primary means of applying this concrete is by projecting it pneumatically onto the target surface. This is called shotcrete. This technique is very common when constructing tunnels, dams, bridges, transportation highways and many other things. However, the education of shotcrete personnel can be very expensive and requires a great deal of field training, operating the shotcreting equipment.
   
Enter me and my thesis partner. We were contracted by the company BESAB to construct a simulation environment for shotcrete reinforcement in which operators could be educated using virtual equipment before taking the step into the real world.
   
Accomplishing this task required us to solve many problems regarding the rendering and physical interaction of concrete. We also had to take into consideration the interface requirements necessary to operate the simulation in much the same way as one would in the real world.  

Some of the features include (also depicted in the images below, from left to right):
   
* Dynamic Parallax Occlusion Mapping used for stone and concrete.
* Soft Particles are used for all kinds of particles.
* Wet concrete dries over time.

A demo movie of the project can be seen on youtube. Also, the thesis report is available for download.

Shotcrete Simulator Shotcrete Simulator Shotcrete Simulator

Ray Tracer 2

Spring 2009

In the spring of 2009, I attended a cource called Advanced Computer Graphics. One of the parts of this course was to create a project in the field of computer graphics. Me and a friend decided that we would create a ray tracer with global illumination. Since both of us had created simple ray tracers beforehand, we wanted to make this one more capable and advanced than we had done in  the past. Here are some of the features it contains:

* Global Illumination (Photon Mapping)
* Area light sources, and soft shadows as a result
* Anti-Aliasing support (Quincunx algorithm)
* Custom scene file format
   
The image below is a screen of resulting program. Notice the color bleeding, soft shadows and caustics (created by the left most sphere).

Ray Tracer 2

Ray Tracer 1

Spring 2006

This was the first ray tracer that I created. Before starting, I knew the theory behind this technique but I had never actually made an implementation. So, I decided to give it a go and this was the result. It's fairly basic, lacks a couple of neat features that we implemented in the newer ray tracer, and is much too hard coded. Also, since it's not optimized at all, it is quite slow.

This was a fun project and it thought me many things about this rendering technique, and it demonstrates the fundamentals of the technique in a concrete way.

Feel free to download the source code.

Ray Tracer 1