Projects . Demos

This page shows productions I was involved in that are related to the demo scene. The projects were initiated by Christian Rösch, who has been involved in the demo scene for quite some time and invited me to join him in working on these particular productions.

Liquidiced - 64k PC Intro released at Evoke 2010

More high-end computer graphics in 64k kilobytes, this production was released at the Evoke demo party 2010 in Köln, and ranked 3rd in the 64k Intro Compo. Again, this was a collaboration, so more credits go to Christian Rösch (Code, GFX), Mark (Code), xTr1m (Code, Music), rip (GFX) and LPChip (Music).

Best viewed in HD, click the title and switch to full screen on Vimeo.

This demo directly builds on the technologies developed for imagine, novel features include particle fluids, volumetric ocean rendering, glistening ice and snow shaders, non-procedurally-generated sub-division meshes, partial HDR rendering as well as cube-map-based lighting and reflections.´

Most of the content is again generated procedurally, apart from a few meshes that were modelled by hand, stored at a low resolution and re-generated at load time using sub-division. We're also using a few pre-generated textures this time, which moved part of the texturing code out of the shaders executed each frame, allowing for better texturing quality using fewer sampling instructions at run time. Most texturing still relies on perlin noise.

For environment mapping and image-based lighting, we're pre-rendering the cave into an HDR cube map at load time, generating a lower-resolution hemispherically Lambert-integrated version of the environment to be used as diffuse light source by objects inside the cave.

The terrain is also pre-generated at load time, using marching cubes to generate a triangulated mesh version of a procedural ISO surface function.

The ocean's surface is rendered using a planar reflection map only, refraction is directly computed from the scene rendered to the color render target by perturbing the parts of the render target lying underneath the surface. Most of the ocean's shader code deals with the underwater experience, which is rendered in two screen-space passes, simulating both volumetric absorption and scattering, as well as computing four layers of scattering rays and projecting caustics onto the geometry lying below the surface.

The objects' ice cover and melting fluids are rendered using particles (spawned on the meshes' faces) that are liquified by first rendering them to their own lower-resolution G-Buffer, the blurring of which results in a meta-ball like effect. The particles are then composited into the final scene using the blurred position and normal data for caustics and shading.

Imagine - 48k PC Intro released at Breakpoint 2010

High-end real-time computer graphics in 48 kilobytes, exclusively released at this year's Breakpoint Demo Party in Bingen and ranked 1st in the 64k Intro Compo. As this was a collaboration, huge credits go to Christian Rösch (Code), Mark (Code) and Turri (Music).

Best viewed in HD, click the title and switch to full screen on Vimeo.

Everything in this demo is generated procedurally. Texturing is done in the pixel shaders in real-time, allowing for nicely animated textures such as the moving and dissolving clouds as well as the rainbow plasma on house walls that can be seen throughout the demo. Nearly all of the texturing shaders make use of perlin noise in some way or other, using a 32x32x32 random volume texture as pseudo random value source. The houses and terrain are pre-generated on the CPU, particles, ribbons, block trees and rainbows are also animated on the CPU, using dynamic vertex and index buffers.

The demo features parallel-split shadow mapping, with shadow masks being generated both time- and space-efficiently in an inferred fashion, soft shadows and SSAO, both using a 12-sample pseudo-randomly rotated poisson disc for jittered texture look-up, glow and god ray effects, and a depth of field effect as outlined by Scheuermann in this paper, enhanced by both depth-sensitive blur and bilateral upsampling.

As this is a DirectX 9 demo, special measures had to be taken to fix various multi-sampling artifacts related to inferred rendering techniques and depth-based post-processing effects, which I have collected into this article.

RAR - Devmania Invitation Demo released at Evoke 2009

RAR is a real-time invitation demo based on breezEngine technology that was released at the Evoke demo party 2009 in Köln, where it was ranked 4th of 8 in the PC Demo competition.

Best viewed in HD, click the title and switch to full screen on Vimeo.

This demo, too, is the result of a close cooperation with Christian Rösch, who came up with the idea of using the breezEngine to create PC Demos and who was the creative mind behind all but one scene in this demo.