UK Web Focus

Innovation and best practices for the Web

Thoughts on the New WebGL Open API Standard

Posted by Brian Kelly on 7 April 2011

A Brief Introduction to WebGL

A post on the TechCrunch blog today asks “Who Needs Flash? New WebGL And HTML5 Browser Game Sets Tron’s Light Cycles In 3D“. It seems the Cycleblob browser game which has been released today was written exclusively in JavaScript, using elements of WebGL and HTML5. WebGL is “a graphics library that basically extends the functionality of JavaScript to allow it to create interactive 3D graphics within ye olde browser” which was released in March 2011.

The TechCrunch article provides a summary of WebGL:

As a cross-platform API within the context of HTML5, it brings 3D graphics to the Web without using plug-ins. WebGL is managed and developed by The Khronos Group, a non-profit consortium of companies like Google, Apple, Intel, Mozilla, and more, dedicated to creating open standard APIs through which to display digital interactive media — across all platforms and devices.

Over the past decade or so that W3C’s approach to the development of open standards has focussed on the development of declarative markup languages based on XML such as SMIL and SVG.  But here’s another approach which is based on providing open APIs with buy-in from browser vendors and other IT companies. Might WebGL have an impact in the development of interactive e-learning and research applications, I wonder?

But Is WebGL Really Open?

Investigations into the potential of WebGL for development work in higher and further education should consider its openness and its likely sustainability.  Although  is has been developed and maintained by a non-profit consortium it is questionable whether an API maintained by an industry consortium should be regarded as an open standard according to a definition of an open standard which the UK Government is currently attempting to define.  As described in a recent post the UK Government’s first condition for an open standards is that it is “result[s] from and are maintained through an open, independent process“.  A industry consortium, even if non-profit making, surely cannot be considered independent; if this was the case Microsoft  could set up a similar consortium responsible for the maintainance of their formats and code base which they could then claim to be an open standard.

But such considerations are really only relevant for those who feel there is a simple binary divide between open standards and proprietary approaches. In my view there is a complex spectrum of openness and for now  I would feel that WebGL is worth considering for development work – and the fact that WebGL is not supported by Microsoft should be regarded as an interesting challenge for developers but not necessarily a reason for discounting it.

Observing WebGL’s Development

It should be noted that there is an entry for WebGL in Wikipedia and, as is often the case, the article provides a useful brief summary of the standard:

WebGL is a Web-based Graphics Library. It extends the capability of the JavaScript programming language to allow it to generate interactive 3D graphics within any compatible web browser.

The development of this entry is interesting.  A stub entry for the article was created on 14 September 2009 and there have been regular updates ever since.

I must admit I hadn’t realised that statistics for revisions of Wikipedia articles are available.  The statistics for the WebGL article reveal that there have been 192 revisions from 104 users. It is also possible to view details for those who have edited the article and to discover how many users are watching the article.

The statistics page for the article also informs us that the WebGL article has been viewed 40,009 times in March 2011 and is ranked 7,576 in traffic on en.wikipedia.org.

What have I learnt from observing the information about the WebGL Wikipedia article, as well as the information provided in the WebGL Wikipedia article itself?

The chart of the number of edits over time shows that there is a steady growth in the number of edits, which suggests that the article is continually being revised.  The main contributors to the article include those involved in development in computer games which may suggest that the priority for future developments may be in this area. However the article itself lists Google Body as an early application of WebGL which perhaps suggests that WebGL could have a role to play in the development of teaching and learning applications.

Your Thoughts

Are there any  examples of early use of WebGL within the higher education sector, I wonder?  I would be interested in hearing about examples and, perhaps more importantly, hearing about experiences of those involved in WebGL development work.

In addition I’d be interested in comments on observation of use and changes in Wikipedia articles as a means of providing early indications of new standards which may be of interest to  developers.  Is this an approach which could be used more widely?

 

 

About these ads

4 Responses to “Thoughts on the New WebGL Open API Standard”

  1. I’ve said it before:

    * Standards offer sustainability and interoperability through trust.
    * Trust derives from simplicity and power but mostly brand.
    * A trusted standard is more useful than an open one.

    As an engineer of less mature technologies I bank on up and coming standards that I trust, but I don’t have the time to consider all the technical ins and outs, much as I try. We all know that the ones that take off are not the “best” ones anyway, cf Betamax, Brunel”s wider railway gauge, etc. I also don’t care much how they’re managed because in the end a good standard is likely to be protected by undemocratic industry because it makes good economic sense for them to do so. Of course it’s not a smooth process. Economic game theorists know that “generous, hopeful and forgiving” cooperation wins over defection in most games, but there are sharp oscillations in reaction to mass defections or bad Apples (you see what I did there) from time to time.

    Ultimately what I want is sustainable joined up services, and that needs trusted standards much more than it needs open ones.

    • Thanks Anthony – I agree with you.

      Note, though, that policy makers, such as those in central government, seem to place their trust in formal standards bodies. It is interesting to note that the current UK Government’s Open Standards Survey lists various Web Services standards but doesn’t seem to mention use of a REST approach.

      Of course there may be different views on the trust we can place in APIs developed in the commercial sector. Should be trust Google, Apple, Intel and Mozilla who are supporting WebGL? What about APIs provided by Facebook or Microsoft? Or, as it is very easy for developers to be critical of those two companies, Twitter, who have recently forced others who have made use of their APIs to withdraw certain aspects of their services?

  2. What I would say is that vendor lock-in is to be avoided. This is part of sustainability. So a standard that can obviate that is good whereas a proprietary API is not so good. I’m all for emerging federated social networking standards for example – e.g. OStatus – so we don’t have to rely on Facebook. But I don’t care that OStatus isn’t being pushed by a formal standards body, or that it is being pushed by Google people (Google Buzz mark II? Google Circles?). I just want it to take off somehow so I can provide a sustainable seamless service to our users :)

  3. Incidentally, it seems the Cyberblob game isn’t going to work for me – it tells me that each of my browsers (Firefox 4 and Chrome 10 on Linux) are supposed to support WebGL, but don’t, and so offers a video instead.

    Perhaps not one to jump on right now, on that evidence.

    That said, Good Grief but am I excited about this kind of thing.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: