Tuesday, 25 September 2018

The Metaverse Coming to a Web Page Near you!

Just recently there was mention of a browser based virtual space on the Google plus Opensim Virtual community which piqued my interest because such things have been promised again and again over the past ten years but nothing ever really came of it. However, a topic was posted by Nara Malone of the Opensim Greyville Writer's Colony at Nara's Nook grid where she said a member of her community, Neo Cortex has been developing a Unity based client with the goal of merging Opensim and Unity to make a hybrid system designed with a focus on storytelling. I found it really interesting but there was a comment by Magnuz Binder who let us know he too was working on a virtual web world using ThreeJS and NodeJS as his preferred coding languages. This prompted me to take a closer look and, believe it or not, from what I learnt I had my own web based world online and working in just three days from scratch. I was pretty excited!

Talla's Virtual Space on a Web Page named after her grid, Farworldz
Use mouse to pan the screen and arrow keys to move avatar

Admittedly it is a very simple portal world but my final version had basic movement, a blobby avatar that responded to keyboard controls and a simple text window for chatting. Naturally, I wanted to find out if others could access it so I gave the address to friends and to my delight some of them found it and left messages on the chat window and said it loaded quickly and was easy to use. It is still online (see above) so feel free to check it out and leave a short message. I might do more with it as I learn but in its present form it still serves as good example of what can be done using open source code snippets and learning the basics of Node and Three javascript.

Not just satisfied with my own effort I wanted to know more about other recent developments and from Selby Evans I learned that a new platform based on that same code has been developed by Evie Marie (SingingGirl) who works with Bill Bright out of the Opensim Life grid. The platform is WebWorlds3D and Selby has his own web world based on this code called CyberLounge.

Opensim Life is dedicated to education and art. Bill Blight said he was not interested in selling content or offering freebies. He is content to handle the Opensim server and support Evie in her work. He said, "She is the brains behind the webworld part, it is her baby from the ground up , I just beat up the servers once in a while."

I pressed Bill a little more and he replied, "Well again, the Art and Education aspect is all SG, she is the one with the Masters. I'm a code monkey  who swings a big hammer. My grid is focused on people, not commerce, it is a passion project, something to keep me busy. So Art, Education , Entertainment, all things that bring people together is what I/we focus on here."

I liked what they have done but they still have a way to go. I visited the web world as a guest and looked around. I had no problems, the page loaded quickly and I could touch things and interact in a limited way but a whole lot more than I had managed with my version. The avatars are not that great though - a bit stiff and woody but easy enough to control and walk about. I understand there is a company behind all this which is the A2Z Smart Group LLC who are  offering to set up a platform for people with embedded code to place it on a web page. 

National Geographic offers an example of NodeJS for Mars, The Red Planet
Anyway, I also learned that Misterblue (Robert Adams), who is a core developer of Opensim focused on BulletSim which is a port of the Bullet physics engine, has also worked extensively on an infrastructure for a virtual world on the web. His projects include Convoar, an Opensim OAR file converter, Basil for displaying web worlds and Herbal3D, in which the various web world projects he is working on are pulled together.

I was interested to note from Robert Adams research that one of his aims was to build an architecture around creating a web viewer where a High Fidelity avatar can stand next to an Opensim avatar in the same space. And, from recent comments by Philip Rosedale he too spoke of the same design goals.
SpotOn3D steaming to a web page
Looking back though, there has been a number of notable attempts at building a web viewer and one of the first caused some controversy when SpotOn3D applied for a patent on the open source code that streamed an Open Simulator world to a web page. That, however, was never a true web viewer like Cloud Party which came later. Cloud Party was developed by some ex-Second Life developers and though it was relatively successful it was taken down when Yahoo bought it out and the developers went to work for them.

Cloud Party on the web
There were others too. Chris Collins, CEO of Tipodean Technologies developed a Canvas web-based viewer and, around the same time, others including Rezzable produced a Unity-based web viewer for Opensim and Katalabs demonstrated an HTML-5/webGL web viewer. Much later there was high expectation from German-based PixiTec who demonstrated the Pixie Viewer which functioned very well and even featured building, mesh with mirrors and 3D printing as an option. Even Kitely, at one time, said they were interested in working with other developers to build a web-based viewer but nothing ever came of any of it.

I recall also that the US Army under the MOSES group were working on a web viewer for Halcyon (the InWorldz fork of Opensim) so I asked Balpian Hammerer, a developer at Discovery Grid that had worked on Halcyon while at InWorldz and he gave a less than enthusiastic reply "They were in the design phase, and the idea was the leveraging of WEB objects to render a scene instead of using a viewer app. I am not enthusiastic that this approach will lead to anything better let alone more efficient. There is much to be said to writing performance critical code as close to the OS native graphics layers especially in limited performance devices like tablets and phones. Too many layers burn cycles which drives up the system requirements. Generic code tends to run much worse when in resource constrained environments like, for example, the 5+ year old computers typical of OpenSim users."

That said recent work by Robert Adams, Evie Marie and others like Neo Cortex and Magnuz Binder and Dahlia Trimble raise the prospect once again that a useful web viewer might be on the way where the Opensim user community can benefit and see their cherished platform's life improved and extended well into the future.

Imaging it, teleporting from an Opensim world to High Fidelity or SineSpace and all done on a web page. Now that would be my idea of what defines a true Metaverse and I think it would do justice to Neal Stephenson's definition in his 1992 Sci-fi novel "Snow Crash" where, to quote Wikipedia, humans, as avatars, interact with other avatars and software agents in a three-dimentional space that uses the metaphor of the real world to describe a virtual-reality successor to the Internet. 

Web Game: HERACLOS and the quest he never asked for

Play Fillory, a fully interactive fantasy game on a web page
FOOTNOTE: I have to confess I knew Dahlia Trimble had been working on a web viewer too and I should have asked for an update. My mistake because, while I was unaware Dahlia's work in this area was was continuing I never the less should have checked. Fact is Dahlia has a very advanced demo and posted it to Youtube very recently and, to quote, "Stress testing a WebGL/emscripten build of one of my viewers with lots and lots of prims. This is a live OpenSimulator 512x512 megaregion on my test..."

Watch the video on YouTube