- So, the big news is of course the release of the beta version of Firefox 4 (previously known as 3.7). Mozilla have been making a lot of noise about the inclusion of WebGL in this release (though you still need to switch it on with the
about:configflagwebgl.enabled_for_all_sites), so it looks likely that it’s going to be there in the final release. - Some of the publicity for the new beta was at Mozilla Summit 2010; here’s a video of Vladimir Vukićević’s talk. Links to all of the demos he shows in it are on this page on his site; looks like there are some adaptations of Pl4n3 and Jacob Seidelin’s stuff there.
- One thing Vlad showed was a very cool WebGL platformer, which Paul Brunt has written to celebrate the release of GLGE 0.5
- I believe this was also shown at the Mozilla Summit: a demo with many contributors, far too many to list here: Flight of the Navigator.
(Does anyone know of a link to a live version of this?)[UPDATE: a live version is on its way.] - On to non-Mozilla-related news: some competition for WebGL? There are early indications that the next version of Flash will have support for 3D graphics.
- I really enjoyed this post by Brandon Jones: why the biggest threat to WebGL gaming is neither Microsoft nor JavaScript performance, but instead the very user interface style that makes browsers so useful.
- From Paul Rouget, a nice simple example that should help anyone who wants to use videos as textures in their WebGL scenes.
- I suspect you need to know more about the background than I do to know what’s going on here: RADIUS network traffic analysed, sent to the browser over WebSocket, and displayed in 3D using WebGL, by Takanao Endoh.
- Matthew Postill has created a C3DL-based system called SceneCreator which lets people create 3D browser-based scenes to share with others. Looks like fun!
- Evgeny Demidov has written a very attractive particle-based fire demo.
- I don’t know whether I’m more impressed by the (apparently) 1.8 million polygons in this demo, or the domain name ;-)
- From the WebGL dev list, a terrain generator.
WebGL around the net, 11 July 2010
WebGL around the net, 1 July 2010
- Lots of good stuff from last week’s WebGL Camp: there are videos for all, and copies of the slides for most, of the presentations up on the website. Well worth looking at!
- One great bit of news that Paul Brunt mentioned in his presentation, and has since blogged about, is that he’s ported the jiglibflash physics library over to JavaScript so that you can use it in WebGL. He’s getting pretty impressive performance!
- There are some translations of the tutorials from this site into Polish over at w3center.pl, including a run though the troubleshooting stuff that recently landed in lesson 0.
- A case where the backstory is more perhaps interesting than the demo: a cloud of particles from Matthew Papakipos, a high-flying Google Chrome engineer who tweeted about having done this just before dropping the bombshell that he was moving to Facebook after being head of the Chrome OS project.
- An interesting tweet from Henri Sivonen: “Cool. Street View using WebGL. Degrades gracefully to a static cylindrical movable image when WebGL isn’t available.”
- Another Quakesque demo from Brandon Jones: a Quake 2 level in WebGL, along with an explanation of why doing such a thing is a terrible idea :-)
- This is an interesting application for WebGL — Diego Cantor’s doing medical imaging (YouTube video only, unfortunately).
- Here’s a very pretty WebGL Earth.
- From China, an attractive ripple effect demo.
First cut at a WebGL FAQ
I’ve polished up the content from the talk I gave at WebGL Camp last Friday (video of the Skype presentation of my talk here, all talks linked from here) and used it to create a WebGL FAQ! Thoughts, comments, corrections, whinges and whines all welcome in the comments — or just register and edit the Wiki.
Slides for my WebGL camp presentation
Just finished my first-ever Skype-based presentation — very confusing talking to a live audience when they’re thousands of miles away! Here are the slides I showed; feedback on the suggested answers to the frequently asked questions in there — and, indeed, other stuff that should be in there — are of course very welcome.
I’ll put it all on the WebGL Cookbook wiki later so that everyone can edit it — hopefully Khronos will be willing to host it as a better FAQ later on.
WebGL around the net, 23 June 2010
Lots of news for today:
- Changes in the WebGL Working Group: Mozilla’s Arun Ranganathan, who was chairing the group, is stepping down, and Vladimir Vukićević is coming in as interim chair until 1.0 of the spec comes out.
- It was amusing that Apple’s demo of the new HTLM5 standard was branded Safari-only, and sad that it didn’t include WebGL. Google’s response, HTML5 Rocks, has neither problem (the San Angeles demo is on slide 25 of the “Interactive Presentation”).
- On the subject of animation, this is rather impressive: from the Biomotion Lab at Queen’s University in Canada, here’s a WebGL walker. I highly recommend you switch on the “Bones” toggle, and then play with the sliders — hours of fun to be had…
- Unsuprisingly, California continues to be a good place to be for WebGL meetups… SIGGRAPH 2010 will be in Los Angeles on 26-29 July, and Khronos will be holding a WebGL BOF session.
- CopperCube 1.4.1 has been released, and now supports animation
- The online WebGL 3D editor 3DTin now supports orthographic projections — maybe not as attractive as perspective views, but often much easier to work with when editing models.
- Dennis Ippel’s come up with another WebGL tutorial, this one covering getting started with GLGE.
- Another tutorial: 3dgames.pl, a Polish-language site covering 3D game development and WebGL in particular, has a promising tutorial on collision-detection, physics and reading the keyboard in WebGL games.
- A new project: Lively Goes 3D from Tampere University of Technology “aims for the development of a compelling 3D mashup environment”. It’s based on earlier work at the university and at Sun, and they have a simple WebGL-based version up and running.
- Andor Salga’s been busy, with release 0.1 of the XB PointStream tool he’s been working on to display high-quality point clouds in the browser (demos here, though be warned that they take a long time to load!), and also extending Processing.js to support transparent WebGL canvases (with, for example, HTML text underneath).
- This is an interesting proposal, I don’t know whether I think it’s a good idea or not: the guys behind Stack Overflow are asking for ideas for single-topic equivalents of the generic SO site, and Rahul Hamdapurkar has proposed that they create one for WebGL.
- DaveR53 commented on last week’s post about the N900 pointing out that the browser also supports HTML events when the phone’s orientation changes: someone’s now put together a video showing a cube that rotates when the phone does. There are some really interesting possibilities for web-based augmented reality here.
- Also on the N900, the X3DOM team blog that they’ve confirmed that their library works on the phone, including animation and sound.
- And in further X3DOM news, here’s an online X3DOM editor from Michael Zoellner.
WebGL Camp
The first WebGL Camp is happening at Stanford University, Palo Alto, California this Friday, and I’m pleased to say that I’ll be giving a short talk (via Skype, so people will be spared the sight of my face ;-) If you’re in the area then it really sounds worth going to; if you’re not, apparently everything will be streamed and also available to watch afterwards (on YouTube, I think).
Speakers that the organiser, Henrik Bennetsen, has announced so far include Vladimir Vukićević, the originator of Canvas3D and thus WebGL, Trevor Smith of Spaciblo, and Google’s Peterson Trethewey (on O3D and WebGL). The speakers he’s not announced yet are also very promising, so it looks like it’s going to be a great day!
[UPDATE] The full schedule has now been announced — it’s looking really good. Many thanks to Henrik for setting this up! I only wish I could be there in person.
WebGL around the net, 14 June 2010
Lots of new links since last time!
- This is a really cool idea — via the WebGL developer list, here’s a WebGL 3D model editor. Blender, watch out :-)
- Here’s a warning: as Chris Marrin says on the Public WebGL list, pretty much all WebGL content on the net right now (my own tutorials included) is invalid! Historically we’ve been able to get away with certain kinds of mistakes because the browsers haven’t been thoroughly validating our shader language; these mistakes could cause all kinds of problems when running on mobile devices in the future. Quite rightly, the browser developers will be tightening up the shader validation soon; an upcoming release of Minefield will make tight validation optional, which will give us all a chance to fix stuff. A little while after that, validation will be on by default.
- A very nice CubicVR demo, this time demonstrating bloom (where light from bright things “leaks” onto nearby dark areas).
- First steps for Andor Salga’s XB PointStream project: 150,000 surface “splats” with lighting, partitioned in an octree.
- From Brandon Jones, an animated character that you might find familiar…
- What looks like another cool demo from Pl4n3, this time based on GLGE — unfortunately my display driver crashed before displaying it :-(
- Another 3d-test interview, this time with Denny Koch of EnergizeGL.
- Using Processing.js, some jellyfish created with Bezier curves.
- Interesting: the first steps in a WebGL implementation for Node.js, a server-side JavaScript framework. As the author says, “[i]magine easily writing games or multimedia applications that run in the browser and on the desktop without changes.”
Video: WebGL on the Nokia N900
Last week, a firmware release made WebGL available by default in the built-in browser on the Nokia N900 smartphone. I’ve put together a video of some of the N900-compatible demos that I listed yesterday. Apologies for the terrible camerawork!
It’s worth saying again that, as far as I can tell, WebGL being live in the N900’s Gecko-based browser is not a statement from the Mozilla team that it’s ready for production applications — rather, it’s a choice on Nokia’s side to make an early-access development release of a technology available to all N900 users. Perhaps they feel that anyone who buys a Linux-based smartphone will be techie enough to be able to handle a bit of beta HTML5 goodness ;-)
[UPDATE] At Mr. doob’s suggestion, I tried IQ’s Shader Toy WebGL demo. It worked pretty well, although the Quaternion demo did cause a few responsiveness problems… here’s a video:
Nokia N900 WebGL support
I’ve spent a while playing with WebGL on the Nokia N900 smartphone. It sounds like its inclusion in the 1.2 release of the phone’s firmware (which happened last week) was a surprise to the Mozilla team, which would explain why we’ve not seem any publicity… So, given that the developers don’t think it’s ready for prime time yet, and that the WebGL standard isn’t at 1.0 yet, and no-one’s been testing their demos on anything apart from desktop machines, it’s surprising that it works at all, and astonishing that it works as well as it does :-)
If you have an N900, here’s a random selection of demos that will work on it; I’ll put a video together for people who don’t but still want to see it… [UPDATE: video here]
- A spinning WebGL cube. (This includes a workaround for an odd bit of shader behaviour — interested parties might want to compare with this version without the workaround.)
- Vladimir Vukićević’s Spore creature viewer (took a long time to appear — perhaps 2 minutes — but worked fine when it did).
- Brandon Jones enhanced Spore viewer (took a while to come up
, and for some reason it won’t respond to mouse drags[UPDATE with a link directly to the demo, mouse drags now work]) - Particle explosions
- Google’s shiny teapot demo
- Google’s San Angeles demo
- Google’s particle demo
- My first Mandelbrot demo
- Lesson 9: Merry Christmas
- Lesson 10.5: nano-doom with lighting
- Lesson 14: per-pixel teapot with specular highlights
- Lesson 16: render-to-texture
- Pl4n3’s single-file skeletal animation
- Ilmari Heikkinen’s whale (a few glitches when drawing this one).
- Pavlos Toukiloglou’s Copperlicht-based Match 3D game.
- Evgeny Demidov’s interference patterns.
- CopperLicht’s Quake demo (loads, but a bit hard to control because keypresses go to the URL bar…)
- Four dollar Plastic Laminator (albeit at 1fps…)
- [UPDATE from the comments below, here's Glubble from PlayWebGL.]
(That list is entirely based on what I happened to click on over the course of this evening. If you’ve got a WebGL demo that you’d like me to try out, leave a comment below with a direct link to the WebGL page and I’ll let you know if it works, and put it in the list if it does.)
WebGL around the net, 7 June 2010
- Big news: apparently, the most recent firmware update for the Nokia N900 mobile phone enables WebGL in its (
WebKitFirefox-based) browser. I have an N900, and hope to have some first-hand news soon. [UPDATE: it works! More in a separate post later.] [UPDATE: here's my list of demos that work on the N900] - Ilmari Heikkinen has released a stereoscopically-rendered whale.
- A demo from PlayWebGL: a GPU game of life, with attractive colours.
- Via Henrik Bennetsen, a presentation from the Google I/O conference on new HTML5 features, including a look inside the GWT Quake implementation.

