A virtual reality image gallery implemented with WebVR

Star on Github

/* Notice (September 2016) - I've been working a lot on the Carnival Framework and not only has Looksy picked up a few quirks along the way. but it's also gotten out of date and is very much due for an upgrade! Please excuse some oddness while I get around to that :) */

Looksy is a WebVR image gallery built for room-scale VR. It surrounds you with beautiful images and invites you to explore, as each image can double as a portal to a whole new gallery, a different "place" with its own distinct visual identity.

Over time, Looksy will expand and evolve as more and more images, galleries and features are added. Would you like to help it grow? If you have visual content you'd like to share, or would be interested in curating or in sponsoring a gallery, please drop me a line :) Email alan@codex.cx or tweet me: @ajrowr.

Looksy is built upon the Carnival framework, which is to say that it evolved from my very first experimentation with WebVR and the Carnival framework started evolving alongside it.

Looksy is currently only compatible with the HTC Vive.

Some things you should know before you start exploring

Your play area (ie. the physical size of your floor space as defined in the Vive setup app) is shown visually, look at your feet and you'll see what I mean. I call this the "raft".

You have a cursor (it's the spinning grey cube), you can use it to select items by clicking the trackpad up/down/left/right. Clicking the center of the trackpad moves the cursor to the thing you're closest to.

You can move around the space by pressing the grip button to teleport the raft to the location of the cursor. This lets you get a closer look at something.

You can load an image from almost anywhere on the web by pasting its URL into the text box on the left. 

If your cursor turns yellow, this means you can navigate "into" the current selection. Click the menu button on the controller (just above the trackpad) to do this. Click the menu button again with nothing selected to "exit".

If there is information about your current selection, it will be displayed on the white readout attached to your green controller.

A reminder: Looksy (and Chromium, currently the only supported browser) are experimental so you can expect to encounter bugs. If something goes wrong, or if you can't see anything in the display box, try reloading this page. If that doesn't work after a few tries, then try closing the browser completely and re-launching it.

Driven by data

Looksy is driven by data feeds. Its content and scenery are encapsulated in a collection of JSON feeds, and it has the ability to connect to Tumblr. More integrations are planned.

I'm working on making some documentation on how to generate your own data feeds compatible with Looksy, but if you don't want to wait, then get in contact with me and I'll tell you what you need to know.

Disclaimer: Note that Looksy and my other experiments are in no way representative of the range of graphical richness and fidelity that WebVR is capable of. I'm a newcomer to 3d graphics programming (most of my experience is in web development) and I haven't even come close to pushing the boundaries... yet :) (And yes, I know my shaders are terrible and some of the textures are janky. Learning curve!)

Tumblr support

You can enter the address of a Tumblr blog in the text input box, and Looksy will do its best to load it. Since a typical Tumblr has a lot of content, the raft has a feature that turns it into an elevator by pressing the left and righttriggers to go up and down, respectively. It loads a few items from the feed at a time, and when your elevator approaches the end, it loads more from the server. 

This feature is particularly experimental; some feeds don't work that well, and I don't suggest you look at the raft or the controllers while you're elevating. Also it can get kind of laggy while loading new content, and lag in VR is much weirder and far more jarring than normal lag. Also you can easily end up above the sky or under the floor. Which is also kind of weird. So, consider yourself forewarned!

Website and content ©2016 Alan Rowarth except as explicitly stated. See code repositories for license grants.