A lot of ShaderToy demos share the Ray Marching algorithm to render the scene, but they are often written with a very compact style and i can't find any straightforward examples or explanation.
So what is Ray Marching? Some comments suggests that it is a variation of Sphere Tracing. What are the computational advantages of a such approach?
Regards,
Luca
--------------------------------------------
Ray marching is a type of ray tracing technique that calculates intersections with geometric objects by iteratively stepping forward along a ray until an object is hit, or a maximum limit is reached. This allows for real-time rendering of complex scenes because the computations can be simplified and parallelized effectively.
Compared to traditional ray tracing methods that use bounded tree structures such as kd-trees or BVHs to
Why is it used so much in WebGL? Are there any resources for better (or simpler) understanding?

Ray marching is indeed a variation of sphere tracing, which is a technique for rendering scenes which uses ray intersection tests and some smart culling to improve performance. In its simplest form, ray marching is doing sphere tracing in world space, instead of object space.

You can think of ray tracing as shooting a ray from the camera into the scene, and following