On Mon, 10 Dec 2018 13:48:29 -0800, Diva wrote:
Some of us core devs have been talking for a while about developing a
viewer more or less from scratch. This code _may_ be a good start. If
there's anyone out here with the technical chops, the time, and the will
to contribute, let us know!

Is there a list of goals for a new viewer?

I ask because I've seen the need for one suggested many times, usually with two arguments:

1) Current viewers make OpenSim look bad; "my kids laugh at me because the graphics look like they're from a 15-year old game". (I think this was said at OSCC, too.)

2) OpenSim needs a web-based viewer; people these days just don't want to download and install software the old-fashioned way, they just want to open a browser window and go.

There is also a less commonly seen argument:

3) OpenSim needs a viewer which can be tailored to provide experiences beyond an SL clone. Viewer developers focusing on SL are unlikely to spend time on such features, so it's up to OpenSim developers to do it. Hence https://github.com/diva/OnLook


Argument #1

...looks iffy to me. A new viewer will not automatically make OpenSim look better. If it is to be compatible with existing worlds (and if not, who will use it?), it will be displaying the same old assets, and shader lipstick can only do so much for porcine content. (I believe somebody at OSCC mentioned dynamic shadows. I scratched my head. We've had those in OS/SL viewers for almost a decade?)

Existing viewers actually do some things really well; I have yet to see any client for the growing crop of new VR worlds do what Windlight can do (Hypatia's comes closest). That would all have to be recreated before a new viewer can be called an improvement.

Is the idea to introduce new asset types tailored to UE's capabilities? Then we're moving from argument #1 to argument #3. Existing worlds won't benefit much in the short term, but they will still have to be supported if there is to be any uptake at all of the new viewer. Meanwhile, users of existing viewers will complain that some assets look broken or even make them crash.


Argument #2

...usually gets shot down with something like "browsers can't do the job" (that too was heard at OSCC). If we are talking about HTML5 and Three.js, it might well be true. But have a look at Epic's Zen Garden demo from March 2017. Is it really obvious that WebAssembly and WebGL 2 can't do the job either?

So, if you really believe that lack of a web-based viewer is keeping OpenSim back, UE's support for WebAssembly might be a good reason to consider going down this route. But then one should weigh the effort of building a whole new viewer against the effort required to get the core parts of an existing one to compile with Emscripten.

As an aside, I am less convinced now than a few years ago that a web viewer would really make that much of a difference. It's not like Fortnite has suffered greatly from the need to download and run a 10 GB installer before you can start having fun (for some people's definition of "fun").


Argument #3

... is the one I find most credible. But whether UE provides the best route to an OpenSim-specific viewer depends on what exactly one is trying to achieve.

Is better graphics an important criterion, to the point that it warrants the introduction of UE-specific asset types unsupported by existing viewers?

Is VR support important? UE and Unity both make this very easy to add.

Is easy customization of the UI what really matters? An easily customizable HTML5 UI around a WebAssembly-driven WebGL canvas could be a worthy heir to OnLook, but this might be easier to achieve starting from an existing viewer.


Maybe these questions have all been thrashed out already. If so, a link to a document summarizing the answers would be welcome.
_______________________________________________
Opensim-dev mailing list
[email protected]
http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev

Reply via email to