There have been several attempts over the past year to create a viewer for Second Life and OpenSim based virtual environments that would run in a browser. I’ve tried to write about them all, from Linden Lab partnering with GaiKai to provide a server-side rendered and streamed experience of SecondLife to Tipodean using the Unity 3D web player to render OpenSim.
Every time I saw one of these I thought — if you have to download and install a plugin, why not just wrap the full viewer up as a plugin and install that? Well now SpotOn3D has done almost exactly that:
It isn’t designed for accessing Second Life. It is mainly designed for embedding on Facebook pages along with Facebook user account integration to drive more adoption of SpotOn3D grids and worlds.
What they have done is to create a browser plugin which launches the full SpotOn3D viewer as a separate process, and ensure that the viewer draws it’s rendered frames onto the space that the plugin has reserved for it in the browser window. This means that the full viewer (based on the 1.23.5 Linden code base) is running, giving you the full experience. Even voice works.
The fact that the viewer is running as a separate process is useful — it should mean that if the viewer crashes it won’t take out your browser (provided that the plugin has been written to cope with the sudden disappearance of the viewer process). The plugin has been created using the FireBreath open source toolkit for creating cross-browser plugins, although it seems that right now there are no hooks for communicating from the page to the viewer other than to launch it.
To try it, head to http://3durl.com/world and install the plugin. After installation you get a choice of two grids
If you don’t have an account you’ll need to create one, then return to that page and use the account info to log in. Then the viewer will launch magically in your browser. The viewport is fixed size unfortunately right now, but it works perfectly. There is a degree of sluggishness (I assume there is an overhead of sending mouse/keyboard input to the viewer process from the plugin) and overall everything felt somewhat slower than running the client natively. However, there’s no denying that it is a full SL viewer-in-a-browser.
It is important to realise that having the viewer launched as a plugin does not bring with it the advantages that a true ‘browser’ based viewer would have. The full viewer is still running, requiring relevant permissions to install it, and all the same firewall requirements that the full viewer has. This is not going to help with adoption of immersive environments in enterprises, other than maybe providing a foot-in-the-door (“Oh, yes, it runs in the browser”).
I guess I should mention Kitely in the context of creating easy to access OpenSim virtual worlds. In fact there’s not so much difference between the approaches. Kitely installs a plugin, but their plugin launches a separate client rather than embedding it in the browser. However right now their account integration with Facebook is already done, and they give you your own region that spins up on demand.
So how did I log into SecondLife with it? By accident when trying to work out how to “close” the embedded viewer — I wasn’t sure that closing the browser tab would log me out so I used the viewer menu to log out – and there is a lovely grid drop down and manager, so you could connect it to any SecondLife or OpenSim server. Bear in mind that the SpotOn3D viewer isn’t in the SL 3rd party viewer directory. And why not just launch the full viewer?