Creating a Volumetric Ray Marcher
Various
Visit resource ↗Description
Ryan Brucks's Shaderbits article builds a volumetric ray marcher for Unreal Engine 4 using custom HLSL material nodes. It follows posts on flipbook pseudo volume textures and heightmap marching to render density inside mesh bounds.
The write-up covers Beer-Lambert transmittance, PseudoVolumeTexture sampling along the camera ray, plane-aligned jitter, thickness limits, and scene-depth clipping for sorting against opaque geometry.
Readers should know Unreal's material editor and can patch Engine/Shaders/Common.usf via the linked helper. It assumes uniformly scaled box meshes and atlased slices for 3D density lookup.
Sections add nested shadow marches, early-out thresholds, and temporal jitter, with sample code and a wisp texture for step tuning.
The post is widely cited in Epic forums and UE5 tutorials adapting VolumeBoxIntersect-style marchers for procedural clouds and fog.
Related resources
- Foundations of Game Engine Development Vol. 2 - Rendering
Second volume on real-time rendering for engine developers - color science, projections, lighting, shadows, fog, visibility, and advanced topics like volumetrics and ambient…
100% match · <general><shaders><advanced><engine><fog><mapping><parallax><sections> - 2D Water Shader Breakdown (Cyanilux)
A Shader Graph breakdown of stylized 2D water in Unity URP: sprite reflections via a second camera, scrolling noise distortion, fake highlights, and tilemap shoreline ripples for pixel art.
100% match · <general><shaders><intermediate><blog><cyanilux><developers><resources><sampling> - Book (w/ Turnable Pages) Breakdown (Cyanilux)
Cyanilux breakdown of a URP spellbook with vertex-shader page turns, flipbook page textures, dual Lit Graphs, pooling C# driver, and optional Blender setup notes.
100% match · <shaders><intermediate><blog><also><cyanilux><developers><material><resources> - Cloud Shader Breakdown (Cyanilux)
Cyanilux Shader Graph tutorial for URP that builds animated cloud decks on a subdivided plane with layered world-space noise, vertex displacement, and depth-based fading at intersections.
100% match · <shaders><intermediate><blog><also><clouds><cyanilux><developers><helps> - Crystal Shader Breakdown (Cyanilux)
A Cyanilux Shader Graph walkthrough for Unity URP that builds an unlit transparent crystal with object-space Y colour gradients, camera opaque-texture refraction, Fresnel opacity, and HDR glow for bloom.
100% match · <shaders><intermediate><blog><also><cyanilux><developers><object><opacity> - Custom Renderer Features (Cyanilux)
Long-form Cyanilux guide to URP ScriptableRendererFeature and ScriptableRenderPass code: example effects, RTHandle setup, blit paths, and Unity 6 Render Graph notes.
100% match · <shaders><blog><also><camera><custom><cyanilux><including><newer> - Depth (Cyanilux)
Long-form Cyanilux tutorial on Unity depth spaces, Z buffers, Scene Depth sampling, SV_Depth, and world-position reconstruction in URP and HDRP.
100% match · <shaders><blog><camera><cyanilux><explaining><post><reference><resources> - Dissolve Shader Breakdown (Cyanilux)
URP Shader Graph breakdown by Cyanilux on dissolve effects: Step and noise clip fragments with glowing edges, height-axis variants, and view-space UVs to reduce seam artifacts.
100% match · <shaders><intermediate><blog><across><also><cyanilux><developers><post> - Unreal 5.8 - Surface stable Fractal Dithering (FULL TUTORIAL)
Full Unreal Engine 5.8 tutorial recreating Rune Skovbo Johansen's (Runevision) surface-stable fractal dithering with surface and post-process materials.
100% match · <shaders><intermediate><engine><material><materials><post><shading><step> - Advances in Real-Time Rendering in Games - 2026
Course site for the SIGGRAPH 2026 Advances in Real-Time Rendering in Games sessions, with talk abstracts and downloadable slides from studios including Activision, EA SEED, Sony,…
100% match · <shaders><effects><games><including><ray><real><time><volumetric> - MaterialX: The Past, Present and Future of Portable Materials
MaterialX: The Past, Present and Future of Portable Materials is a recorded talk by Alain Hostettler, presented at High-Performance Graphics (HPG). HPG talk by Alain Hostettler…
100% match · <general><shaders><intermediate><also><material><materials><nodes><shading> - Computing Camera Rays
Computing Camera Rays is a technical blog article by Christoph Peters. Blog post deriving camera-ray origin, direction, and far-plane length from a world-to-clip matrix so…
100% match · <blog><advanced><article><camera><intersection><post><ray><technical> - New AMD Radeon Developer Tool Suite update brings shader source code, Extended PIX Markers, and command-line capture
New AMD Radeon Developer Tool Suite update brings shader source code, Extended PIX Markers, and command-line capture is a technical blog article by Chris Hesik. AMD GPUOpen…
100% match · <shaders><intermediate><blog><article><developers><including><post><ray> - Implicit Surface rendering for CAD
Implicit Surface rendering for CAD is a technical blog article by Francis Le Roy. Long-form blog on interactively rendering arbitrary implicit surfaces in a CAD prototype…
100% match · <blog><advanced><article><camera><developers><marching><post><ray> - Announcing AgilitySDK 721 Preview and an addition to LinAlg in Shader Model 6.10
Announcing AgilitySDK 721 Preview and an addition to LinAlg in Shader Model 6.10 is a technical blog article by Amar Patel. DirectX Developer Blog announcing Agility SDK…
100% match · <shaders><intermediate><blog><along><article><developers><notes><post> - GPU memory management in AnKi
AnKi 3D Engine blog post on how GPU memory management evolved from custom VkDeviceMemory suballocation through GPU-driven rendering and a render-graph to placed/committed…
100% match · <blog><across><custom><data><engine><including><large><post> - On Rendering the Sky, Sunsets, and Planets
On Rendering the Sky, Sunsets, and Planets is a technical blog article by Maxime Heckel. Maxime Heckel write-up on implementing atmospheric scattering in the browser for…
100% match · <shaders><intermediate><blog><article><developers><post><raymarching><real> - Kiln: WebGPU-Native Out-of-Core Volume Rendering for Multi-GB Datasets
DEV Community article introducing Kiln, a WebGPU-native out-of-core volume renderer that streams multi-GB brick pyramids over HTTP with a fixed VRAM page cache and compute…
100% match · <shaders><blog><article><community><developers><large><marching><ray> - Precomputed Lens Transport Maps
Precomputed Lens Transport Maps is an ACM Transactions on Graphics paper by University of Waterloo authors, hosted on arXiv as a PDF.
100% match · <advanced><commonly><linked><many><ray><real><targets><time> - How We Draw a 3D Sprite World: The Stylized Art of Never's End
GDC Vault talk by Ryan Juckett (Hypersect) on rendering Never's End as a hand-drawn 2D pixel-art look from fully 3D assets.
100% match · <general><shaders><intermediate><camera><engine><gdc><materials><ryan>