Ray marching is the umbrella term for a bunch of algorithms to “march” a ray iteratively. This technique is used to compute intersections with implicit surfaces (usually a signed distance field), where an analytical solution may be difficult or even impossible to obtain.
The simplest ray marching algorithm have a fixed step size, but Distance-aided ray marching algorithms like sphere tracing usually takes much fewer steps and have higher resolution near the surface.
Naive Ray Marching | Sphere Tracing |
---|---|
![]() | ![]() |
Common Strategies
- sphere tracing
- DDA (for voxels)