Rendering techniques
Rendering non-euclidean geometry
From the computer screen to the ambient space
Our work is based on Fermat’s principle: the light follows paths which locally minimizesthe distance between two points (also known as geodesics).
Unlike in the euclidean space
The main strategy to produce images is the following.
Imagine that the observer is located at a point
- If such an object exists, then we color the corresponding pixel on the screen with the color of the object.
- If
does not intersect any object, we leave the pixel black.
Raymarching
The difficulty in this program is to compute the intersection of
Each object is not represented by a mesh (i.e. a triangulation) but by a signed distance function
In practice, we do not need the exact signed distance function of an object. A suitable under-estimator is enough. We can refine also the algorithm using directed signed distance functions. More details can be found in this article.
Virtual reality
Stereographic vision is based on the following phenomenon. As they do not have the same position, the left and right eyes do not see the exact same picture. These parallax differences can be interpreted by our brain to give depth cues. A virtual reality headset has a separate screen for each eye. In the VR mode of our software, we have set up two cameras in the scene, separated by the interpupillary distance, recording the images for the left and right eyes. This works reasonably in many situations, especially if the objects in the scene are close to us. Indeed, at a small scale, the geometry can be thought of as a “small” deformation of the euclidean space, and our brain is still able to merge the two pictures. However, for objets which are far away the curvature of the space may have a strong influence. The left image and right images become so different that our brain get lost.
Path tracer

Hyperbolic Fire
Path traced view of hyperbolic tiling, rendered as hot glass
The default mode of our software uses the empiric Phong model to render the shading of an object. Phong justified his model, by comparing a render with a real-life photograph of a (euclidean) scene. We use this model far outside the setting in which it was designed for, so one could question whether or not it produces accurate results in our non-euclidean spaces. To address this issue we developed a path tracing mode in our software. The idea is the following. Numerous light rays are thrown from our eye in the scene. Each time the ray hit an object, it bounces (with some random perturbation), loosing some energy, until it reach a light source. This technique does not work in real time anymore. However, it captures many optical effects such as diffusion, reflections, refractions, soft shadows, etc. You can look at the gallery to see some images produced in this way.