Crystal Frost viewer development to continue despite Linden Lab announcing a mobile viewer

Water polo in Second Life made with Firestorm. (Image courtesy Berry Bunny.).

Development of Crystal Frost — a mobile-friendly Unity-based Second Life viewer which is now in beta trials — will continue despite Second Life recently announcing its own mobile virtual world viewer.

Crystal Frost is currently a downloadable Windows virtual world viewer like Firestorm, but will also be available on Linux and Macs — and on mobile devices, said project lead and developer Berry Bunny.

“I do however think that due to the fact that the [Second Life] project was suddenly postponed last year that the timing of them announcing it now is not a coincidence,” she told Hypergrid Business. “I think they expect me to be deterred, but no. No, this is happening regardless. They only way they can stop it is if they buy the project from me.”

The viewer uses the LibreMetaverse protocol — a set of commands used by Second Life viewers to communicate with the servers. This is the same mechanism used in OpenSim. What is now remaining for OpenSim to work in beta is exposing the OpenSim loginURI, she said, and that will come.

“It is just not exposed at this time because I don’t test on OpenSim at this time,” she said. “OpenSim loginURI setting will be available long before it is publicly usable.”

The viewer is already being tested on the NGC version of OpenSim. and there will be a plugin module allowing people to “roll their own grid client,” she said.

“For the most part it will be up to the OpenSim community to make a grid client that can be used in their specific grids,” she added. “The reason for this is that there are a myriad of differences between OpenSim grids caused by the OpenSim community’s blatant refusal to maintain compatibility with the reference viewers. I am not the hero OpenSim wants, just the hero OpenSim deserves.”

Here is a video preview of the viewer.

Currently, she is limiting the number of patrons to test the viewer but anyone can choose to support the project by pledging through the project’s Patreon page.

Not initially planned as a web viewer

Unity does work in browsers, but the Crystal Frost viewers is not initially intended to be a web-based way to access virtual worlds.

That might be a mistake, said Hypergrid Business editor Maria Korolov. Current OpenSim and Second Life users don’t mind the desktop-based viewer, but a simple one-click access to a virtual world might bring in brand new visitors.

“If people could just go to a website and enter the world, it would be a lot easier for new users. and everyone wants to bring in new users,” she said.

Berry Bunny said she is not opposed to a web version only that it might take a little bit more time, effort, and resources as it would require a completely different code base.

Worries about support for OpenSim

The fact that the viewer prioritizes Second Life and not OpenSim seems to suggest that it may not work well for OpenSim. Plus supporting OpenSim now days would require more code base changes than merely exposing the loginURI, said Zetamex CEO Vincent Sylvester.

“If you look at the recent tickets on the bug tracker as well as the weekly meetings, there is now a bigger difference in how some things are handled versus Second Life,” he said. “So to support OpenSim absolutely requires code changes to basic functionality.”

The fact that the viewer is based on Unity can also result in performance issues, which has been a problem for past Unity-based viewers. Primitives, for example, may not render well.

Primitives are basic geometric shapes used to create 3D objects in Second Life and OpenSim, and are an older technology compared to mesh.

“Mesh is easy as you can just render as is, but primitives change shape in multiple ways, generate faces where there were not any before and even change their triangle count as you apply more modifiers,” said Sylvester. “On small scales you hardly notice, but if you throw a couple thousand primitives at it things get complicated quickly.”

A new viewer, actively supported and interested in supporting OpenSim, ,would open up new possibilities according to Sylvester. Maintaining compatibility with Second Life aside, he said, protocols can be expanded and additional data processed, which could finally allow things not previously possible. Given that Second Life has started another push to implement things people have been asking for years and OpenSim had ever since the requests came up, he added, it would probably push them to implement major changes if OpenSim were the ones showing off the capabilities. According to him, there is plenty that can be easily upgraded to vastly improve the capabilities, but without viewer support there is no point.

“For that to happen a viewer needs to make the effort to not treat OpenSim like an afterthought or chore,” he said.

What Crystal Frost viewer actually offers

There seems to be a list of several features supported on Second Life viewers which very many developers have spent many years implementing. A new viewer will, therefore, need to support all these features and make them better or add in more to be able to complement, compete effectively with, or completely replace the existing Second Life viewers and that is going to take a lot of time and resources, said Kitely CEO Ilan Tochner.

“That said, creating a new Unity-based viewer that only implements a very limited subset of the features Second Life or OpenSim users have grown accustomed to is definitely doable,” he told Hypergrid Business.

Crystal Frost seems to differentiate itself from Firestorm by offering a more realistic virtual reality support. It currently supports all forms of objects except rigged mesh, fitted, bento, and animesh. It also supports textures, sim sun position tracking, and animates physical objects, while the water levels adjust to the height of the sim. It also features normal camera functionality just as found on Firestorm or other Second Life and OpenSim viewers. There also is object scale, rotation, and movement changes. It also supports most object and color changes.

The viewer currently manages a frame rate of 30 FPS, a third of what Firestorm offers, but it will go up when the team does dynamic occlusion culling as done in Firestorm viewers.

Some functionality will, however, not be available with an open source viewer. The water system, for example, is a proprietary Unity functionality that has to be paid for.

“Unfortunately the open source version will not be able to have the fancy water system in it,” she said. “I will provide a dependency switch in case someone wanting to make their own Crystal Frost wants to buy the fancy water system, but I don’t have a license to distribute the source to the water system in question.”

A swimming pool in Second Life when viewed using the Crystal Frost in low frame rates. See one for Firestorm below for comparison. (Image courtesy Berry Bunny.).
Same pool of water above under Firestorm. (Image courtesy Berry Bunny.).

Even though Unity’s best, proprietary water system won’t be available, the viewer does actually offer some advantages over current viewers, via override tags, for special effects such as underwater tunnels and mirrors.

“The water prims, for example, use an override tag,” she said. “You put a #waterbox hashtag in the description of a prim and the next time a Crystal Frost viewer sees that prim is rezzed, it ends up being a box of water with the same dimensions and rotation as the prim in question, and with the same color, which is how you could make a pool of blood for instance.”

The water prims can be used to make pools of water, pools of blood, and pools of slime, and objects can be interacted to make water waves that emanate from objects moving through the water.

She will also add a water-hole override tag to the viewer. The override tag will make it possible for creators to make boats that can cut into the water so it would be possible to, for instance, go under water with the boat without any water getting into the boat. Looking around through while in boat will provide realistic view of the water.

“This will also make building underwater sims with glass tunnels to be realistic without having to worry about the water fog outside the glass dome, or tunnel, or whatever, but not inside,” she said.

Water polo in Crystal Frost viewer while still in low frame rates. See below for comparison. (Image courtesy Berry Bunny.).
Same water polo under Firestorm. (Image courtesy Berry Bunny.).

Much improved VR support

She is planning to add what she calls proper VR support after the initial public release of the viewer, and once the textures decoding performance issues are solved. Already, the feature is being worked upon, she said, and it will include such unseen features as pop up menus that a user can virtually hold and move around with their hands, rather than a static viewed menu that is always at the edges of an ordinary VR headset.

“Well, as far as I know, the only VR option available at this time is a modded Firestorm and they have got everything handled entirely wrong, but I don’t blame them,” she said. “Anybody who can code can look at the Linden Lab’s code which Firestorm inherited and tell that it is a giant heaping helping of spaghetti.”