Just here for the pictures? Jump straight to the Results . Problem Statement I’ve recently started implementing an atmosphere model for my renderer and quickly realized something frustrating: no matter how much I tweak the Rayleigh, Mie, and ozone coefficients, I can’t get a render that looks right across all conditions. I can tune the parameters to produce beautiful, blue skies when the sun…
Over the course of last year I’ve seen VPT being forked, cloned and built many times. Although it is still a toy path tracer I felt the need to provide some kind of documentation other then a simple github readme file. In this article I will guide you through the installation, build and usage of VPT and its accompanying houdini plugin “instancer_hda”. I am hoping that this article will guide…
When I first started writing a volumetric path tracer my end goal was to render beautiful cloudscapes consisting of with tens or maybe hundreds of individual clouds. With the last cloud modelling series I now have the experience to sculpt the necessary cloud elements based on their altitudes but my renderer couldn’t render more than a single cloud until recently. To be able to create a cloudscape,…
A couple years ago I’ve read a great paper that I’ve thought would be a great addition to houdini. The paper is named “ Double Bubbles Sans Toil and Trouble: Discrete Circulation-Preserving Vortex Sheets for Soap Films and Foams ” by Fang Da et al. and made it first appearance in Siggraph 2015. It is a great article that uses a multi-material surface tracker to solve volume preserving soap film…
Rendering an image is such an abstract topic, that if it’s your first encounter with render algorithms, you will most likely have a hard time understanding the concept. All the path tracing calculations, next event estimations, free flight distances and much more fancy pedantics can confuse you but, in the end, I think visualizing how a single photon moves can help you digest the concept in a…
This year has been a very productive time for me in regards to work and the personal projects I’ve accomplished to complete. I’ve finished and uploaded two giant series (Volumetric Renderer and Cloud Modelling), gathered ideas for many side projects and enhanced my skills in both houdini and programming. I will be continuing to create new stuff in my spare time but before I move on to future…
Welcome Back Clouds are no doubt one of the main actors if you have a shot that is taking place outdoors. They can set the mood to romantic with puffy cumulus clouds, dramatic with dark, stormy clouds or epic with cumulus congestus clouds, for example if you have a dogfight scene between two fighter jets. They provide scale (especially when ground is not in shot) and help us understand the general…
Welcome Back In this part of the “Cloud Modelling” series we will be exploring how we can create high altitude clouds. What I mean by high altitude is defined as clouds residing between 5 to 15 kilometers. We won’t be focusing on very high altitude clouds like Nacreous or Nocilucent cloud types. During the layout of a shot we usually see these clouds in the background of low altitude clouds, and…
Preface Hello again and welcome back. In the last series “Volumetric Path Tracing” we explored how a volumetric path tracer is formed and optimized. Volume rendering is a broad and complicated topic but even if you have the best renderer in the world, without a decent volumetric model you can’t have a good looking image. This series will be consisting of three parts where we explore different…
Part 1 – Nvidia GVDB Open VDB All path tracing and ray tracing applications relies on data that are stored in the memory some way. For textures, a lot of memory layouts are available but for volumetric data the best layout is to store them in voxels. You can think of voxels as pixels in a 2d texture but with an extra dimension. Traversing a 3d space inside voluemetric data bounding box is…