Contributions to Open-Source Projects

Research Frameworks

mitsuba IM (interactive mitsuba fork)

Mitsuba IM is a fork of the comprehensive physically-based renderer mitsuba (mitsuba-renderer.org) by Wenzel Jakob (and other contributors), which has proven an invaluable framework for the scientific evaluation of both classic rendering algorithms and novel rendering research. The IM fork comes with an easily hackable and extensible, interactive imgui frontend, and with new simplified interfaces for implementing novel rendering research, enabling responsive interactive previews while scene or integrator parameters are edited. Finally, the fork greatly reduces dependencies on third-party packages, allowing for out-of-the-box compilation of a recursive git clone on modern C++ compilers, without requiring additional binary packages.
Read More »
Source Code »

 

Path-traced Quake II

Q2VKPT was created by Christoph Schied as the first playable game that is entirely raytraced and efficiently simulates fully dynamic lighting in real-time, with the same modern techniques as used in the movie industry. The purpose of this project is to find out exactly what's still missing for a clearer pathway into a raytraced future of game graphics. While some problems have already been addressed by academic research, many open real-world problems slip unnoticed until one actually tries to implement a full game renderer. Therefore, the project is meant to serve as a test bed for computer graphics research and the game industry alike, and to give enthusiasts a glimpse into the potential future of game graphics.
Read More »
Source Code »

 

Open Implementations of Publications

In the following, you find source code for some of my publications.

Reweighting Firefly Samples for Improved Finite-Sample Monte Carlo Estimates

Bright samples with low sampling probability, often called fireflies, occur in all practical Monte Carlo renderers and are part of computing unbiased estimates. For finite-sample estimates, however, they can lead to excessive variance. Rejecting all such samples as outliers, as suggested in previous work, leads to estimates that are overly biased and can cause undesirable artifacts. In this paper, we show how samples can be reweighted depending on their contribution and sampling frequency, such that the finite-sample estimate can in fact get closer to the correct expected value, and the overall image noise (variance) can be controlled.
Read More »
Try it »
Source Code »

 

Real-time Rendering of Procedural Multiscale Materials

We present a stable shading method and a procedural shading model that enables real-time rendering of sub-pixel glints and anisotropic microdetails resulting from irregular microscopic surface structure, in order to simulate a rich spectrum of appearances ranging from sparkling to brushed materials. We introduce a biscale Normal Distribution Function (NDF) for microdetails to provide a convenient artistic control over both the global appearance as well as over the appearance of the individual microdetail shapes, while efficiently generating procedural details.
Read More »
Try it »
Source Code »

 

Distortion-free Displacement Mapping

Displacement mapping a textured surface introduces distortions of the displaced surface's texture. Our approach corrects this by counter-distorting the other texture maps according to the displacement map. We describe a fast and simple, fully GPU-based two-step procedure to resolve this problem. First, a correction deformation is computed from the displacement map. Second, we apply the correction deformation to the texture coordinates used for surface texture lookups, counteracting the uneven distortion due to displacement mapping.
Read More »
Try it »
Source Code »