Realistic Gaussian beam shader

£0+
19 ratings

Overview: A procedural shader to create accurate visualisations of Gaussian laser beams.

Description: The enclosed shaders "plot" the intensity distribution of Gaussian beams using volumetric shaders, using the following equation:

where

Here, (r,z) are cylindrical polar coordinates orthogonal/parallel to the beam long axis, I = intensity, I_0 = total intensity, w_0 = beam waist, w(z) = z-dependent spot size, z_R = Rayleigh length, P_0 = total power, n = refractive index, lambda = wavelength.

Two shaders are provided - 1) a regular Gaussian beam and 2) a Gaussian beam with pulsing.
The default shaders enable the beam waist, Rayleigh length, total intensity and beam colour to be controlled independently (i.e. not physically realistic). For realistic control, an optional Input Conversion node is provided that allows for the shaders to be controlled based on measurable/known variables. Further documentation is provided in the images above.

Compatibility:

  • For Blender 4.0 onwards
  • Preferably Cycles render engine (for accurate rendering of volumetrics). However, also works with Eevee.

Attribution: Please provide attribution to Ryo Mizuta Graphics wherever this asset is used for commercial/published academic work (e.g. publication figures, presentations, etc). Please consider tagging any posts on Twitter (@Ryo_M_Graphics) and Instagram (@ryomizuta_graphics) whenever this asset is used/publicized on social media.

£
I want this!
Size
1.35 MB
Copy product URL

Ratings

5.0
(19 ratings)
5 stars
100%
4 stars
0%
3 stars
0%
2 stars
0%
1 star
0%
£0+

Realistic Gaussian beam shader

19 ratings
I want this!