Giter Club home page Giter Club logo

hypvr's Introduction

hypVR

Hyperbolic space with webVR support. WASD + Arrows to move, space or p to play/pause. Numbers 1-9 give different models.

A websperience by Vi Hart, Andrea Hawksley, and Henry Segerman, using the hyperbolic space prototype developed at a hyperbolic webVR "hackalot" with Vi Hart, Mike Stay, Henry Segerman, Andrea Hawksley, and Andrew Lutomirski, with help from Marc ten Bosch's 4d graphics shader, Jeff Week's Curved Spaces, Mozilla's webVR framework for THREEjs, etc.

Try it at: https://hawksley.github.io/hypVR/

Links

hypvr's People

Contributors

hawksley avatar henryseg avatar vihart avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hypvr's Issues

Using on a 3D display

I just watched the @standupmaths video, and tried this out on my "LG D2342P Cinema 3D" display. This is a normal desktop monitor with support for polarized 3D glasses.

The software mostly works fine: I needed to change js/vr/VREffect.js to always do renderStereo, and I also needed to change the horizontal field of view for both eyes. I did this by trial and error and values between 60 and 65 for rightDegrees and leftDegrees seemed to work well.

My question is:
How would I go ahead and calculate the correct field of view for my monitor, considering it is a 16:9 display?

If I would know how to calculate these, and support for this type of display is desired, I am willing to add some hotkey to switch to this mode. Unfortunately there is no way to automatically detect my setup, as I simply put on my polarized 3D glasses and enable side-by-side mode using the monitor's OSD menu.

Idea: Escher Gallery

Escher's Circle Limit drawings depict scenes in the hyperbolic plane, drawn using the Poincare disk model. My idea is that you add an Escher art gallery mode, that allows people to explore the full hyperbolic drawings in VR.

One interesting thing to note is that you can actually obtain the Poincare disk model in Hyperbolic space allowing you to set it up so the images will look like the Poincare disk model if looked at from the correct angle (but then the user can explore it from different angles or directions).

However it is done, I think an art gallery would be cool.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.