Thurston's UniVR est un projet sous Unity visant à représenter les 8 géométries de Thurston en réalité virtuelle, créé dans le but d'aider les chercheurs en mathématiques à comprendre et appréhender ces géométries non-euclidiennes. Thurston's UniVR is a project made with Unity, that aims at representing Thurston's eight geometries in virtual reality. This project's goal is to help researchers in mathematics understand and apprehend these non-euclidean geometries.
Les géométries non-euclidiennes sont un concept assez abstrait qui pour beaucoup est difficile à représenter. Pour cette raison, notre client Rémi COULON, chercheur à l’IRMAR, et son équipe ont créé un site web 3-dimensional.space permettant de visualiser les 8 géométries de Thurston. L’année dernière un nouveau projet a vu le jour : rendre possible la visualisation de ces géométries en réalité virtuelle sur Immersia, la plateforme de RV rennaise de l'IRISA. Ce groupe d’étudiants a pu implémenter 5 des 8 géométries de Thurston, nous léguant la tâche d’implémenter les 3 dernières, dites complexes. Non-euclidean geometries are a quite abstract idea which is hard to represent for most people. For this reason, our client Rémi COULON, researcher at IRMAR, and his team have made a website 3-dimensional.space allowing us to visualize the 8 Thurston’s geometries. Last year, a new project was born : to make it possible to visualize these geometries with virtual reality on Immersia, the Rennes VR platform of IRISA. This student group has succeeded to implement 5 of the 8 Thurston’s geometries, leaving us with the last 3, said complex.
Contrairement à la géométrie euclidienne, les géométries non-euclidiennes ne respectent pas le 5e axiome d’Euclide. On peut représenter ce postulat par le fait que les géodésiques (plus courts chemins) ne soient pas nécessairement en ligne droite. Une des conséquence de ce postulat est que ce chemin n'est pas toujours unique. Cela crée des déformations sur les angles et les longueurs, donnant de tels aspects distordus. Contrary to euclidean geometry, non-euclidean geometries don’t respect the 5th Euclid axiom. We can represent this postulate by the fact that the geodesics (shortest paths) are not necessarily in a straight line. One of the consequences of this postulate is that the shortest path between two points isn't always unique. It creates deformations on angles and lengths, giving such distorted aspects.
L’objectif de ce projet est de permettre l'interaction avec toutes les géométries de Thurston. Pour cela nous devons nous approprier le projet de l’année dernière et y implémenter les 3 géométries restantes. Les fonctionnalités déjà existantes doivent rester fonctionnelles. On devra par la suite réaliser des optimisations en performance car une mauvaise fréquence d’images peut provoquer une cinétose Nous devrons aussi optmiser la précision car certaines géométries contiennent beaucoup de bruit visuel. The goal of this project is to allow interactions with all of Thurston’s geometry. For this, we have to appropriate the last year's project and implement the last 3 geometries. Existing features must remain functional. Firstly we will have to make performance optimizations, a bad image frequency could provoke motion sickness. Secondly precision optimizations, some geometries having a lot of visual noise.
Nil est une géométrie non-euclidienne dont la particularité est qu'elle est représentée par un groupe de matrices nilpotentes. Une matrice nilpotente est une matrice qui devient nulle si on l’élève à une certaine puissance. Dans cette géométrie, les géodésiques sont rectilignes dans le plan xOy mais s’enroulent en spirale autour de l’axe z. Nil is a non-euclidean geometry whose particularity is that this geometry can be described by a group of nilpotent matrices. A nilpotent matrix is a matrix that will transform into a zero matrix if multiplied by itself a certain number of times. In this geometry, geodesics are expanding straightly if they belong to the xOy plane but they form spiral along the z axis.
Sol est une géométrie non-euclidienne qui a la particularité d’être la géométrie 3D la moins symétrique des huit. Un autre aspect est qu’il existe deux plans hyperboliques passant par chaque point. Dans cette géométrie, les géodésiques se courbent vers les z positifs dans le plan xOz et vers les z négatifs dans le plan yOz. Entre ces deux plans, les géodésiques s’enroulent en spirales. Sol is a non-euclidean geometry whose particularity is to be the least symmetrical geometry out of the eight 3D geometries. Another thing about Sol is that each point possesses two planes that pass by it. Finally geodesics are bending towards positive z if they belong to the xOz plane and toward negative z if they belong to the yOz plane. In between, geodesics are bending in spirals.
SL2R est une géométrie non-euclidienne dont la particularité est qu’elle est représentée par l’ensemble des matrices 2x2 respectant la contrainte d’avoir un déterminant égal à 1. La visualisation de SL2R est relativement similaire à celle de Nil. SL2R is a non-euclidean geometry whose particularity is that it’s represented by all 2 by 2 matrices respecting the constraint that its determinant is equal to 1. The visualization of SL2R is very similar to Nil’s one.
Du bruit peut aussi être généré par des objets trop proches de la bordure des cellules. Ceux-ci se retrouvent partiellement téléportés et donc mal affichés. On peut corriger ce problème avec le creeping, qui permet de détecter cette "fausse" téléportation et revenir en arrière. Cependant, pour les géométries complexes comme Nil, il n'existe pas de formule, même approchée, pour corriger ce bruit. On doit donc utiliser une méthode par dichotomie pour localiser précisément la frontière, ce qui est beaucoup plus coûteux en calcul. Sometimes, noise can be generated by objects too close to the cell border. It brings problems with partial teleportations leading to wrongly diplayed objects. This problem can be avoided thanks to the creeping which will detect this "false" teleportation and come a few steps back to solve this issue. Howevever, for complex geometries such as Nil, there isn't any formulae to correct this noise. Therefore we have to use another method using dichotomy in order to locate precisely the border of the cell, the new problem generated is that it needs more resources.