Re: [vwrap] Technical basis for VW client in a web browser?
Morgaine <morgaine.dinova@googlemail.com> Fri, 17 December 2010 07:56 UTC
Return-Path: <morgaine.dinova@googlemail.com>
X-Original-To: vwrap@core3.amsl.com
Delivered-To: vwrap@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix)
with ESMTP id BF5983A694C for <vwrap@core3.amsl.com>;
Thu, 16 Dec 2010 23:56:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.676
X-Spam-Level:
X-Spam-Status: No, score=-2.676 tagged_above=-999 required=5 tests=[AWL=-0.300,
BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001,
J_CHICKENPOX_51=0.6, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com
[127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ut-L44FmdZwt for
<vwrap@core3.amsl.com>; Thu, 16 Dec 2010 23:56:32 -0800 (PST)
Received: from mail-qy0-f172.google.com (mail-qy0-f172.google.com
[209.85.216.172]) by core3.amsl.com (Postfix) with ESMTP id 91E4A3A694D for
<vwrap@ietf.org>; Thu, 16 Dec 2010 23:56:31 -0800 (PST)
Received: by qyk34 with SMTP id 34so1254178qyk.10 for <vwrap@ietf.org>;
Thu, 16 Dec 2010 23:58:17 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma;
h=domainkey-signature:mime-version:received:received:in-reply-to
:references:date:message-id:subject:from:to:content-type;
bh=RWBohu2f0kbu5t/6eZcyVDGfTeQ2fqHkyu+H27V4HNc=;
b=uDVQn0K5E2IIvMDL4nrFycOSRH2dBvkP66AuxQwf4f7YRl+zkZ7Hzb1rIzoTMTnwAd
KnjUwr1pmOjWq3IOyWRvO5iYcDH2SDMg5ywaF/97XExSI2WPpFjlT4XJujlNdGAn+gh1
2bq3uermVgB0DSSvaES/+DYWiwlwYfiHUP4yU=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma;
h=mime-version:in-reply-to:references:date:message-id:subject:from:to
:content-type;
b=qZ397RKiStdZzNv2WhoUnzeST8W3F93BAxpqfpA8y5OYiWPQZh0LBtYwN8+HTFjHUz
FcuVYvOpt1EsbqRp9wSOdSgbltN7HT/xCReJNGRNoNNXmV6Ir9FpwW/0QtmvFfLvgsSi
IzjmdXMxjSDp4c6GF1AciFM5UAGkWqTGVIpMM=
MIME-Version: 1.0
Received: by 10.229.213.211 with SMTP id gx19mr517391qcb.172.1292572696922;
Thu, 16 Dec 2010 23:58:16 -0800 (PST)
Received: by 10.229.91.67 with HTTP; Thu, 16 Dec 2010 23:58:16 -0800 (PST)
In-Reply-To: <AANLkTikFWUxQyT9aNFBk7-Fdb5bNdFT9Bj-dehqVP0WN@mail.gmail.com>
References: <AANLkTintjQdAS=EWfiRu3oWenB42LKsNzJPDJ+5ofBRO@mail.gmail.com>
<AANLkTinhWObg6Te2VtGYKXsxBG5=gVDS5szmjtLeOgnm@mail.gmail.com>
<AANLkTikYn-iA7osXT_oW8rL61GhK57pp7uJVmTSGVvj7@mail.gmail.com>
<AANLkTikFWUxQyT9aNFBk7-Fdb5bNdFT9Bj-dehqVP0WN@mail.gmail.com>
Date: Fri, 17 Dec 2010 07:58:16 +0000
Message-ID: <AANLkTikFiJsLf2jNnJve90oXpChzFNc+6PQiYmWtMW9y@mail.gmail.com>
From: Morgaine <morgaine.dinova@googlemail.com>
To: vwrap@ietf.org
Content-Type: multipart/alternative; boundary=0016362842ea724a6d04979688d6
Subject: Re: [vwrap] Technical basis for VW client in a web browser?
X-BeenThere: vwrap@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Virtual World Region Agent Protocol - IETF working group
<vwrap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/vwrap>,
<mailto:vwrap-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/vwrap>
List-Post: <mailto:vwrap@ietf.org>
List-Help: <mailto:vwrap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/vwrap>,
<mailto:vwrap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 17 Dec 2010 07:56:33 -0000
Joshua, I notice that you did not list any technical merits of going that route, but instead you launched directly into the technical problems associated with it. Unfortunately this is all too common! :-) The technical merits seem to be rather elusive or possibly non-existent and so are never mentioned, while the disadvantages are well known and many. Referring to your list of issues and technologies, you've enumerated rather well some of the areas of mismatch between the VW technologies that we have been using for the better part of a decade and the Web technologies that Web standards bodies are trying to establish. Although you say the problems are not "blockers", in nearly every case they are inferior to the non-browser technologies we use today, in many cases markedly so. And some of them actually *are* blockers, on grounds of size (remember the "no downloads" fantasy), performance, communications model, or because of the problems created by sandboxing. i find it very worrying that the usual engineering approach of giving reasons for adopting a given technology based on its technical merits do not appear to be of concern to those working on browser clients. The push for it seems to be entirely non-technical, and apparently the prevailing meme is "Let's do it, technical merit is immaterial". As an engineer, I'm not very impressed by this. Additionally, nobody is discussing the architectural mismatch between VWs and Web applications either, and that is a rather dramatic mismatch since the two have almost opposite state models. It's close to Web gospel that the massive scalability of Web apps and huge server-side concurrency stems from disjointness of client states from each other, yet we have the exact opposite situation in VWs. Really this whole direction makes little technical sense. Regarding Sirikata, they have explained that their demo is little more than a demonstration of 3D using their protocol, with none of the features or complexities that are so central to living in a persistent virtual world. It's great to hear that their first trial was so successful, but that success doesn't tell us anything about the prospects of implementing a full VW client that way. As I'm sure all developers realize, there is no free lunch available here so huge amounts of code will have to be written and downloaded by Web users. It's also worth mentioning that while Javascript is a fairly reasonable language in its niche, it wasn't designed for programming in the large at all, and yet full VW clients will be very large applications. Your final point is one that I can agree on, if I can rephrase it as "the browser is probably the wrong environment for the full VW experience". Unfortunately, it's hard to say anything meaningful about user experience, given that we can't even think of any technical benefits of using the browser as a platform in the first place, so we're starting from the very undesirable base of "inferior experience expected". (This is why I asked my question about technical benefits.) I can't help feeling that there is a strong analogy with lemmings and cliffs here, because we seem to be in a headlong dash towards the big cliff of inappropriate technology for no good technical reason that anyone wants to express, so far. ;-) Morgaine. ===================================== On Thu, Dec 16, 2010 at 5:07 PM, Joshua Bell <josh@lindenlab.com> wrote: > On Thu, Dec 16, 2010 at 3:01 AM, Morgaine <morgaine.dinova@googlemail.com>wrote;wrote: > >> So yes, what I'm looking for here are some substantive technical reasons >> for pursuing the browser route for VW clients beyond small, cut-down >> introductory ones. So far I've not seen any good technical reasons for it >> at all, and in contrast, technical reasons why it could be a *bad* host >> platform are abundant. > > > Lisa Dusseault and I wrote a paper (linked from here) last year outlining > some of the technical challenges. The good news is that most of the > challenges are being actively addressed by browser vendors and the Web > community in general. > > At a high level, a 3D immersive VW client needs these subsystems: > > - User Interface > - 3D Rendering > - Networking > - Audio and Voice > - Logic > - Application Host/Framework > > The Second Life Viewer, for example, uses: > > - UI: custom toolkit on top of OpenGL (with declarative definitions > called XUI) > - 3D: custom rendering engine on top of OpenGL > - Net: custom messaging library using UDP plus HTTP libraries like CURL > - Audio: FMOD/OpenAL (general) and Vivox (voice) > - Logic: application logic in C++ > - App: custom app host/framework for windowing/OS integration > > Looking at the Web as a platform, the following are available: > > - UI: HTML/CSS/JS; Flash; Silverlight; Unity3D > - 3D: Flash; Unity3D; WebGL; custom plug-ins; server-side rendering to > video > - Net: XHR; Flash; WebSockets > - Audio: Flash; HTML5 Audio; Vivox plugin > - Logic: JavaScript; Flash ActionScript; Unity3D C# > - App: Web browser > > Obviously, that's a mish-mash of different technologies; one of the pushes > of the "HTML5" effort - using that term in it's broad marketing sense and > covering the various technologies like WebGL, WebSockets, WebWorkers, CSS3, > ES5, etc etc - is to create a more unified, Standards-based platform for > application development. > > Efforts such as KataLabs KataSpace (http://www.sirikata.com/blog/?p=184) - > which is built using "HTML5" tech only - shows that this is feasible today, > to some degree. > > To drill into the technical impediments and how they will need to be > addressed: > > - UI: none, really; HTML for UI is a mature technology. It's true that > many implementations are poor, but this is not a blocker. > - 3D: effectively 0% of users have WebGL now, but that will change > significantly within 12 months; Flash 3D is currently weak but Molehill is > due in late 2011 and should have fast uptake. Unity is available now but is > a plugin which turns away many users. (Yes, technically, Flash is a plugin > too, but it's a special case both technically and socially); server-side > rendering is available now but there are many open variables > - Net: WebSockets is not stabilized yet and does not offer UDP (which > may be necessary for some low-latency scenarios); further, cross-platform > - Audio: HTML5 audio for presentation is progressing well, but > streaming voice capture has not yet been tackled and I haven't seen > streaming-down of realtime sessions yet. Vivox has a plugin available today, > however, that can be driven by.. > - Logic: JavaScript appears adequate for most application logic, but > the amount of data that needs to be processed per frame in a complex world > like SL is significant - far more than most games. Most WebGL demos so far > have extremely simple requirements. > - App: obviously, in the web an app lives in a browser tab. This > implies far less control over system resources and the user's attention, and > affects the implied user model - fast startup, tear-down with little > warning, integration into navigation stack (e.g. back/forward), simultaneous > sessions, etc. > > Like most applications, attempting to simply recreate the experience as-is > within the browser is probably not the right approach, and will lead to a > poor experience. That said, I don't think there are significant technical > barriers, and certainly we already have examples where functional VW clients > implemented in the browser have been created. > > -- Josh > > > _______________________________________________ > vwrap mailing list > vwrap@ietf.org > https://www.ietf.org/mailman/listinfo/vwrap > >
- [vwrap] Technical basis for VW client in a web br… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Joshua Bell
- Re: [vwrap] Technical basis for VW client in a we… Meadhbh Hamrick
- Re: [vwrap] Technical basis for VW client in a we… Peter Saint-Andre
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… JohnnyB Hammerer
- Re: [vwrap] Technical basis for VW client in a we… peter host
- Re: [vwrap] Technical basis for VW client in a we… Brian Hurley
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Cristina Videira Lopes
- Re: [vwrap] Technical basis for VW client in a we… peter host
- Re: [vwrap] Technical basis for VW client in a we… SM
- Re: [vwrap] Technical basis for VW client in a we… Meadhbh Hamrick
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Hurliman, John
- Re: [vwrap] Technical basis for VW client in a we… Mic Bowman
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Dan Olivares
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Dan Olivares
- Re: [vwrap] Technical basis for VW client in a we… Joshua Bell
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Morgaine
- Re: [vwrap] Technical basis for VW client in a we… Dahlia Trimble
- Re: [vwrap] Technical basis for VW client in a we… Dzonatas Sol
- Re: [vwrap] Technical basis for VW client in a we… Dzonatas Sol