Tim's blog

WebGL and Hardware acceleration

, , , , ,

The first week of March was a busy one for me. I started with releasing a Windows-only public preview build of what I have been working on in Opera lately, WebGL and hardware acceleration. A few hours later I got on a plane to San Francisco to attend GDC and give a presentation about WebGL in Opera at the WebGL 1.0 specification announcement.

You can read more about the build in the core blog. For more information about WebGL the WebGL wiki is a good place to start.


Hardware acceleration

Hardware acceleration is something I have been working on on and off for a long time now. I actually had a hardware accelerated renderer in Opera up and running in 2004. That renderer was based on an older graphics library used in most non-desktop versions of Opera before Vega. Since we already knew we would have to replace it with Vega in the near future we never spent time finishing that implementation, but some parts of it are actually used in the new hardware accelerated renderer.

My next hardware accelerated renderer in Opera was up and running in 2008, and we posted a video of it. That renderer was an early version of what we have now released a public preview of. I did not work on it full time since 2008, we decided to focus on getting the software backend - used as fallback when hardware acceleration is not available - as fast as we could first. I also did not do anything related to hardware acceleration when I worked with the desktop team making Opera 10.50, but after that was released I came back to doing hardware acceleration again.

WebGL

Parallel with the hardware acceleration work I have also been working on WebGL. I have both been working on the specification and the implementation in Opera. At the moment the WebGL build of Opera only use the OpenGL backend, which means you have to have up to date drivers from the graphics card manufacturer in order to use it. This limitation applies to both WebGL and the hardware acceleration. We are working on a Direct3D backend (two actually, D3D 9 and D3D 10) which will make it easier to find working drivers on Windows. The WebGL implementation is not complete yet, but it is passing most of the conformance tests and many demos already work well.

GDC presentation

The presentation given at GDC was an update of the status of WebGL in Opera. After the status update I showed a demo I have been helping a colleague developing. The demo is a preview of a larger demo and an article on how to develop high quality WebGL content. The article and demo will be released at dev.opera.com when it is finished. Embedded here is a video of the demo.

Some of the techniques used in the demo are:

  • Content imported from Maya
  • Hardware skinning
  • Shadow mapping
  • Bloom
  • CSS based fullscreen mode

The making of Opera 10.50

Comments

João EirasxErath Wednesday, March 16, 2011 8:37:53 PM

Originally posted by timjoh:

  • CSS based fullscreen mode


oh... link ?

Unregistered user Sunday, May 29, 2011 7:12:47 PM

Anonim writes: It would be nice to have working WebGL on OpenGL 1.3 to give support for old geForce and ATI cards. Or at least on DirectX 7 or 8. By the way, why do we have to wait so long for ANY hardware acceleration? Since S3 Virge graphics we have 2D acceleration (drawing lines, circles, text, filling with colour, pasting bitmaps, hardware overlays YUV etc) and it seems to be not used at all.... If there is so huge problem with complete acceleration maybe it would be good idea to provide at least partial acceleration for some functions?

ChrisSlamdex Wednesday, June 1, 2011 9:15:29 AM

Originally posted by anonymous:

By the way, why do we have to wait so long for ANY hardware acceleration?

Because it's a lot of work, especially if you want to support XP?

Unregistered user Thursday, August 11, 2011 2:06:58 PM

_ck_ writes: Any chance of an updated labs preview of webgl support to see if more opengl drivers work with it? (like the integrated graphics in i3/i5 cpus) It's been almost half a year now? Thanks and keep up the great work!

Swapnil RustagiSwapnil99pro Sunday, September 11, 2011 4:27:37 AM

Originally posted by anonymous:

It's been almost half a year now?


I am also thinking about this. wait coffee

Write a comment

New comments have been disabled for this post.