I am a Research Engineer at ALLSIDES working on physically based inverse rendering for 3D scanning at scale. My research interests lie at the intersection of physically based forward and inverse rendering, and generative AI for 3D applications.
I completed a M.Sc in computer science at TU Delft where I wrote my thesis on geometry-guided video generation, under the supervision of Petr Kellnhofer. Before this, I obtained a B.Sc in computer science at TU Delft, my thesis was writen under the supervision of Elmar Eisemann and was on importance sampling for physically based rendering.
In my free time I enjoy spending time outdoors, hiking, skiing, swimming, scuba diving, and learning something new.
Some of the projects I worked on during my studies
Propose a method for video generation from an animated 3D mesh with a 2D diffusion model. Our approach first generates a texture for the guidance mesh using existing methods for multi-view consistent generation and we extract features from the model while generating the texture. We then generate video frames using depth conditioning from the input 3D animation, to enforce temporal consistency we use the features extracted in the previous stage. By using this two-stage pipeline, our method gives stronger robustness to occlusions, changes in object scale than prior work

In physically based rendering, sampling light sources is challenging when they are partially occluded (e.g., a bulb inside a lampshade). We propose using artist specified portals which indicate openings to a light. Our key insight, is that the regions of visibility of a light through a portal correspond exactly to the regions of the imaginary shadow cast by the portal. We can then re-use existing shadow volume algorithms to determine the optimal sampling strategy for the portal depending on the location of the shading point.

NeRFs learn to represent a 3D scene from posed 2D Images using differentiable volume rendering, but training and rendreing NeRFs remains costly, making it difficult to perform small scale experimentation. We propose a 2D analogue, reconstructing 2D shapes from 1D renders as a proxy task. This simplified setting enables us to replicate results from various NeRF follow-ups using an order of magnitude less compute.

Practical Path Guiding uses a 5D spatio-directional octree to represent the light field for the purpose of path guiding, but unfortunately this data structure is difficult to visualize for a 3D scene. Our key observation, is that if we consider the toy task of rendering a 2D scene, this 5D tree becomes 3D, which we can easily visualize. To this end we implement a custom 2D path tracer, and an interactive tool where you can trace rays and visualize how the SD tree learns to represent the light field.

OpenGL game engine built from scratch. Includes an entity component system, shadow mapping, PBR shaders, SDF Glyph Rendering, Bézier curve animation and more!

A blender plugin implementing various geometry processing algorithms. Includes several variants of Iterative Closest Point for mesh registration, and a number of mesh editing tools and brushes based on Laplacian and Gradient Transformations.

2025-present
ALLSIDES
2022-2025
Delft University of Technology
2021
Delft University of Technology
2022-2025
Delft University of Technology
2019-2022
Delft University of Technology
2022
Delft University of Technology