[draft] Volumetric Rendering Introduction

In computer graphics the assumption that light only interacts with surfaces in the geometry is often made, not accounting for how light interacts inside a participating medium. When light travels in any medium that is not a vacuum, photos can be absorbed, emitted or scattered at every point along the ray. Volumetric Rendering are lighting models that considers light transport participating media – how light interacts inside a medium before it reaches the eye.

It is the reason why the sky is blue. It accounts for the shafts of light appearing to radiate from the sun behind a tree or falling through a window in a dark room and it gives the characteristic looks of many natural phenomena such as clouds, smoke, fire and fog. Many important visual effects are a direct consequence of that light behaves in this manner and has thus been an important step within computer graphics.
bilateral upsampling.pdf

Given a ray from some point, O, travelling in the direction w towards the eye, C, the resulting radiance L_C is described by the radiative transfer equation. The outgoing radiance, L_O, is attenuated in the medium according to the extinction equation, ...,  and radiance from in-scattering and emission is added and also attenuated:

L_C = T_r(O \rightarrow C)L_O + \int_{0}^{S}T_r(xs \rightarrow C)\sigma_t(x_s)L_{scat}(x_s)ds

L_{scat} = \rho \sum_{i=0}^{nlights}P(w_i, w)V(x_s, w_i)L_i(x_s, w)

Distance fog is an analytical approach specifically for fog rendering where, by making assumptions about homogeneous media, the amount of fog can be described as a function of depth and height in the scene. It is effective and cheap and gives a good sense of depth in a scene, but lacks important visual phenomena from how light sources interact with the fog. Billboard particles is still industry standard for rendering smoke and dust, and with inclusion of soft particles and local light interaction can yield good results despite being less physically correct. Regarding light shafts,  Screen Space Light Shafts have been used thoroughly and yield very visually pleasing results but requires the light source to be on the screen.

Apart from atmospheric scattering, other more sophisticated analytical solutions for homogeneous media have also been proposed. There are ways for analytically integrating point lights [citation needed]. [citation] derives and analytically solves a volumetric integral capturing airlight effects, how light sources are diffused through participating media. These methods does not handle heterogeneous media.

Volumetric ray marching solutions discretize the transfer integral to yield an approxmite solution, either sampling or tracing light sources for each step along the ray. Within both the film industry and medical sciences, the participating media information is then sampled from a volumetric buffer.

ray march backlog:

  • What Ray Marching is =>
  • Wronski uses compute shaders to ray march through a frustum aligned voxel buffer, performing the lighting separately.
  • DICE aligns froxels onto lighting tiles
  • LotF uses simpler view space ray marching but with tighter ray marching bounds for each light type (full screen pass for sun light)
  • LotF uses Interleaved Sampling
  • Wronski uses subsample jittering