[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] download/activity indicator





On Tue, Aug 10, 2010 at 11:05 AM, Mark Callow <callow_mark@hicorp.co.jp> wrote:

I was not for a moment suggesting the browser should tell the user "We're not ready to play yet." I am simply saying that a blank page with Done written in the status bar is less useful than a blank page with an activity indicator in the status bar. I agree it is ideally the application's responsibility to provide the user with appropriate feedback during loading but many applications fall short, even some written, as Chris wittily pointed out, by people close to WebGL.

Such applications could tarnish the WebGL name because people on seeing a blank page and Done will say "this is crap" or "this is broken", move on and then tell their friends WebGL doesn't work. If an activity indicator is showing while the page is blank they may (a) wait a few more seconds and so actually see something and (b) if their patience is exhausted before anything appears, they may be more likely to blame the app rather than WebGL.

Having the browser status bar displaying an activity indicator does not detract from any application provided feedback. If the application provides good feedback the user probably won't even notice the browser status bar.

Unfortunately it would effect lots of existing apps. Email apps are constantly doing requests behind the scenes. So are chat apps and several image viewing apps.  Whether it's appropriate for that activity to be displayed to the user is something that only the app can know.

I'll be happy to add progress indicators to any of the demos on the wiki if no one has any objections. I'll try to add them to any new demos as well.

 

Regards

-Mark



On 2010/08/08 22:07, Steve Baker wrote:
It's easy enough for the application writer to handle this.  WebGL (like
OpenGL) is supposed to be a low level API - you have to expect to handle
some of these things for yourself.

Having the browser tell the user "We're not ready to play yet because
stuff is downloading" is a really bad idea.  My present app pre-loads
things in background while getting the user signed in, choosing what
(s)he wants to play, designing an avatar, etc.  I *REALLY* don't want
the browser telling them that they have to wait when I've gone to a hell
of a lot of trouble to make a smooth user experience that specifically
avoids them having to wait!   Doing that makes my application look like
it takes longer to start up than it really does.  _javascript_/HTTP
supports background loading - so the browser can't possibly know when
we're done.

The job of a low level API like OpenGL/WebGL is to make it possible for
carefully written applications to behave nicely - the job of middleware
is to make that easy to do for developers who don't have the time to do
a proper job of it themselves.

Hence, it is entirely inappropriate for the browser/WebGL to tell the
user things that aren't necessarily true.  It's OK to have some kind of
built-in activity indicator - but it shouldn't be over-specific about
whether the user should wait or not.  Some things have to be left for
the application...this is one of them.  If your application is going to
take more than a couple of seconds to get to the point where the user
can interact with it - then it should provide a load indicator of its own.

That said - there is room for a layer of middleware on top of WebGL that
might provide those kinds of services automatically.

  -- Steve


Chris Marrin wrote:
  
On Aug 6, 2010, at 4:22 PM, Mark Callow wrote:

    
When WebGL apps are loading there often be times when the browser
status bar says "Done" but nothing is apparently happening. E.g, the
Spore demo. In the case of Spore it is downloading the model data. In
other cases in fact nothing is happening because the app. is broken.

This is very user unfriendly. Can browser vendors make the
download/activity indicator operate when WebGL apps are loading model
data? Then if the browser says "Done" and nothing has appeared, users
will know there is a problem.

      
The Spore model is being downloaded with XHR, which gives plenty of
events telling you its progress. But it's up to the author to use
these events to give the user feedback. The fact that Vlad is not
doing this is just shameful :-) (I don't do it either!)

You do see some demos that popup a dialog if they fail to get a WebGL
context and that give a busy indicator while data is being loaded.
You're starting to see WebGL libraries  that have this functionality
built in. So in the future I think you'll see the feedback more...

-----
~Chris
cmarrin@apple.com <mailto:cmarrin@apple.com>




    
-----------------------------------------------------------
You are currently subscribed to public_webgl@khronos.org.
To unsubscribe, send an email to majordomo@khronos.org with
the following command in the body of your email: