Skip to main content

SDF ray march test

Classic sphere tracing in a fragment shader: animated primitives, lighting, and optional reflection marches. Raise steps until surfaces look crisp, then measure FPS.

Rated 4.6 out of 5 based on 445 reviews

Your browser does not support the HTML canvas element.
Frame rate
--
FPS
Frame time
--
ms
March steps
--
Passes / frame
--
Bounce depth
--
Framebuffer
--
Frame stability
--
%
Status
--

What this test measures

This is GLSL ray marching on the fragment pipe. It does not use hardware ray tracing extensions. Raise steps until surfaces look clean, then read FPS. Desktop GPUs tolerate aggressive settings longer than fanless tablets.

  • March steps cap the inner loop per ray segment.
  • Bounce depth adds extra march sequences for reflections.
  • Work scales with passes × steps × bounces × pixels.

Graphics adapter

Renderer
-
Vendor
-

How to run the ray march test

  1. Start with a moderate step count so the surface is visible.
  2. Raise steps until edges look stable, then note FPS.
  3. Add a bounce only after the base march is smooth.
  4. Compare with the volume shader tests if you wanted a volumetric BM scene.

SDF ray march

Software sphere tracing in WebGL (not DXR / hardware RT)

What you measureFPS under step count, bounces, and pixel count
NotHardware ray tracing APIs

Ray marching is not hardware ray tracing

This test marches a signed-distance field in the fragment shader. That is a known GPU shader workout with a 3D look. It is not DXR, Vulkan ray tracing, or Metal ray tracing. If you wanted a volume shader BM test, use /tests/vsbm/ instead.

Phone and PC

Raise march steps until surfaces look filled in, then read FPS. Extra bounces cost more than a small step increase. On a phone, keep steps modest. Desktop GPUs tolerate aggressive settings longer than fanless tablets.

Ray march questions

Why do I see holes at low step counts?
The march stops too early. Raise steps until the surface fills in, then measure FPS.
Is this hardware ray tracing?
No. It is sphere tracing of an SDF in a WebGL shader, not a hardware ray tracing API.
Is this a volume shader BM test?
No. Volume shader BM is a different scene at /tests/vsbm/.
Can I run it on a phone?
Yes, with a lower step count. Stop if the device is uncomfortably hot or the context resets.