WebGL Raytracer

WebGL ray tracing

A re-implementation of my simple ray tracer, this time purely in a fragment shader for WebGL.

Details »

glTools

Image 15

Some of the most important classes in OpenGL2 packed into easy-to-reuse classs. Namely framebuffer (and depthbuffer) objects, Shaders and vertex buffer objects. Recently I have updated the classes to support OpenGL3.

Download old version »

OpenGL mirrors

OpenGL mirror

OpenGL mirrors

Details »

Software rasteriser

Rasterised Stanford Bunny

Very inefficient-but-fun-to-implement software rasteriser :)

Details »

Volume Rendering

Boston Teapot in the Volume Renderer

Pellentesque adipiscing pharetra lorem, ullamcorper luctus tortor iaculis sit amet. In arcu magna, tincidunt at justo eget.

Details »

Dynamic Cubemapping

Dynamic cubemaps

An OpenGL2 method to render dynamic cubemaps; for example, for dynamic reflections or refractions.

Details »

Spectral Rendering

Spectral Teapots

Spectral Rendering on the GPU using FBOS and MRTs.

Details »

ACES II

ACES II

A wooden replica of an ACES II ejection seat.

Details »

DCS Arduino

DCS Arduino schematic

Praesent sit amet auctor sem, ut convallis leo. Mauris eget leo pellentesque, placerat risus eget, scelerisque ipsum.

Details »

Rocket Science

Rocket trajectories

A small 2D simulator of rocket movement written in Mono/C#. The goal was to have an easy to use 2D Orbiter replacement with full orbital mechanics (well, on a plane anyway). KSP now fills that role.

Details »

Small Train

Image 16

A small switching operation simulator written in python/pyglet.

Voxelscape

Voxelscape

A semi-voxel renderer (like the old Novalogic titles) by ray casting on the GPU combined with traditional rasterisation graphics.

Details »

MAME Arcade

MAME arcade menu

A MAME cabinet.

Details »

Deferred Shading

Deferred Shading

A straight-forward, non-optimized tech demo of deferred shading by rendering everything into float FBOs. The first pass renders into the G-buffer render target, the second pass reads back these values and calculates final shading.

Source »

zrgUnit

zrgunit code

I was fed up with the overkill of cppUnit, so as a small exercise for the software engineering exam (back then) I wrote this lightweight C++ unit test suite. Everything is packed into a single, quite small header, so it won’t clutter your project with unnecessary files and libraries. Provided is an example and doxygen documentation.

Download »

Cloudbase

Viewfrustum culling

This viewfrustum culling demo was built upon the OpenGL Pseudo-Instancing white paper from NVIDA. 25 Terrain tiles with 2500 trees each, as well as 60 clouds with 250 particles each were rendered, for a full 26500 quads.

Source »

Simple Ray Tracer

Image 18

This was just a quick over-the weekend test of some raytracing techniques. It developed further into a multi-tiled, multi-threaded SIMD raytracer to test the multicore systems at uni. Currently, it supports diffuse phong shading, and almost everything is pretty much hardcoded, although this might change in the future.