Articles . Overview
This section contains articles on the lessons learnt during my work in the field of graphics programming.
Recent Publications [Read]
More recent publications can be found on cg.ivd.kit.edu/english/zirr
GPU Pro 5: Object-order Ray Tracing for Dynamic Scenes [Read]
Info page on the article puhlished in GPU Pro 5. Placeholder for potential future updates.
GPU Pro 5: Object-Order Ray Tracing for Fully Dynamic Scenes
Tobias Zirr, Hauke Rehfeld and Carsten Dachsbacher
Rendering Ice in Liquidiced [Read]
When I started writing the snow / ice shaders for liquidiced, I was a bit surprised about how few articles I could find that dealt with the convincing rendering of glistening (sparkling) ice and snow. This article conveys the main ideas behind the rendering of ice in liquidiced.
Three not-so-cute Anti-Aliasing Tricks [Read]
Anti-aliasing is an absolute must for any modern real-time 3D application. When multisample anti-aliasing first came up in real-time computer graphics, it was introduced into the major graphics APIs with solely the fixed-function pipeline in mind. Therefore, in the advent of shaders, when developers started to push rendered pixels back into the pipeline again and again, it also became the source of an entirely new set of problems. This article provides three tricks to overcome these problems in three different sections of your rendering pipeline.
Simplistic Marching Cubes Optimization [Read]
The marching cubes algorithm is a well-known algorithm in the field of computer graphics that provides a rather straight-forward way of generating polygon meshes from voxel data. Naive implementations that follow the basic description of the algorithm in question are not too hard to find, yet many of these example implementations suffer from the fact that they are generating non-unified / non-indexed triangle meshes, besides evaluating voxel density functions up to eight times in exactly the same spot. This article addresses both of these issues providing rather simple, yet fast and efficient solutions yielding perfect results.
Notes: Build Settings [Read]
Notes: (V)C++ Gotchas [Read]