Ray-marching is a technique for producing computer graphics similar to ray-tracing: for each pixel we cast rays out into the world, and decide how to colour the pixel based on what the ray hits. While ray-tracing requires us to solve for intersections between the ray and objects in the world, ray-marching works by querying a signed distance function – for each point in space this returns the radius of the largest sphere centered at the point that does not intersect the objects in the space. This information tells us how to march along the ray without hitting any objects. We have already implemented a virtual reality simulation of three-dimensional hyperbolic space with ray-marching, available at http://michaelwoodard.net/hypVR-Ray/, and before that polygon rastering simulations of and , available at http://h3.hypernom.com and http://h2xe.hypernom.com. Our plan is to extend the ray-marching technique to other Thurston geometries.
- Roice Nelson, Henry Segerman, and Michael Woodard, Hyperbolic VR using Raymarching, https://github.com/mtwoodard/h