O'Reilly logo

WebGL: Up and Running by Tony Parisi

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 6. Integrating 2D and 3D

No doubt by now you have gotten a sense of the vast set of capabilities that comprises WebGL: the raw rendering power, the ease of development with JavaScript, the open specification, and the ubiquitous platform that requires no download. This is already a boon for all kinds of application development, a massive new weapon in the web developer arsenal. But it doesn’t stop there.

Let’s take another look at the official Khronos definition of WebGL (the italics are mine):

WebGL is a royalty-free, cross-platform API that brings OpenGL ES 2.0 to the web as a 3D drawing context within HTML, exposed as low-level Document Object Model interfaces. It uses the OpenGL shading language, GLSL ES, and can be cleanly combined with other web content that is layered on top or underneath the 3D content. It is ideally suited for dynamic 3D web applications in the JavaScript programming language, and will be fully integrated in leading web browsers.

Obviously this is a mouthful, so we’ll have to forgive the writers for trying to fit it all into a paragraph. But it’s possible that the Khronos folks have—to borrow a term from journalism—buried the lead here. Look at the text in italics. In my opinion, the true breakthrough unleashed by WebGL—what really makes it different from any other technology that has come before—lies in its ability to be seamlessly integrated with all other content on the page.

3D graphics has been around for a long time. Even 3D graphics in a web browser ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required