Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Hyperbolic VR using Raymarching.

alt text

Based on the websperience by Vi Hart, Andrea Hawksley, Sabetta Matsumoto and Henry Segerman featured over at This project seeks to improve upon the original by using raymarching as a technique to improve the visible depth of the environment. HypVR-Ray is being worked by Michael Woodard, Henry Segerman, and Roice Nelson and is helped by the work of Jeff Week's Curved Spaces, Mozilla's webVR framework for THREEjs, and Jamie Wong's Ray Marching and Signed Distance Functions.

This material is based upon work supported by the National Science Foundation under Grant No. DMS-1708239. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.

Check out this project at


Running Locally

Running this locally requires a simple web server (to source the shader files at runtime), with the root at the same level as index.html. This can be done in python 3 by running the command "python -m http.server". On Windows, you can set up a server in the Control Panel Administrative Tools, in the IIS Manager (you may need to turn this feature on first). NOTE: The server will need to have a MIME type configuration for .glsl files set to "text/plain".


Use arrow keys to move and "wasd" to rotate the camera. "q" and "e" roll the camera. To enter VR mode first click on the VR icon, then press "v", "enter", or "space" to enable tracking.

Related work

  • Vi Hart, Andrea Hawksley, Elisabetta A. Matsumoto, and Henry Segerman. Non-euclidean virtual reality I: explorations of H3. In Proc. Bridges 2017, pages 33-40. Tessellations Publishing, 2017.
  • Vi Hart, Andrea Hawksley, Elisabetta A. Matsumoto, and Henry Segerman. Non-euclidean virtual reality II: explorations of H2 × E. In Proc. Bridges 2017, pages 41-48. Tessellations Publishing, 2017.
  • Vi Hart, Andrea Hawksley, Henry Segerman, and Marc ten Bosch. Hypernom: Mapping VR headset orientation to S3. In Proc. Bridges 2015, pages 387–390. Tessellations Publishing, 2015.
  • Jeff Weeks. Curved Spaces. a flight simulator for multiconnected universes, available from
  • Jeff Weeks. Real-time rendering in curved spaces. IEEE Computer Graphics and Applications, 22(6):90–99, 2002.
  • Charles Gunn, Discrete groups and visualization of three-dimensional manifolds, Proceedings of the 20th annual conference on computer graphics and interactive techniques, 1993, pp. 255–262.
  • Charles Gunn, Advances in metric-neutral visualization, Proceedings of gravisma 2010, 2010, pp. 17–26.
  • The Geometry Center, Not Knot,