Skip to Content
Programming 3D Applications with HTML5 and WebGL
book

Programming 3D Applications with HTML5 and WebGL

by Tony Parisi
February 2014
Intermediate to advanced
401 pages
11h 20m
English
O'Reilly Media, Inc.
Content preview from Programming 3D Applications with HTML5 and WebGL

Chapter 7. Canvas: Universal 2D Drawing

At the end of the day, 3D graphics are rendered on a 2D surface such as the display of your computer, tablet, or phone. What makes them 3D is the appearance of depth and perspective: some objects appear closer, others farther away. If we also want our 3D to be interactive, then the rendering must happen quickly enough so that the changes are displayed without a perceptible delay—at least 30, and ideally, up to 60 times per second.

WebGL and CSS3 enable real-time 3D rendering using the GPU, the specialized graphics-processing unit present on today’s computers and devices. While 3D hardware acceleration is extremely important to interactive 3D graphics, it is not a prerequisite. It is also possible to create compelling 3D experiences using software rendering. For web applications, software rendering means using the Canvas 2D context—the universal API for drawing 2D graphics in a browser.

There are a few situations in which we should consider using Canvas 2D over WebGL. First, while it is near ubiquitous, as of this writing WebGL is not supported in all mobile platforms, the most notable exception being Mobile Safari on iOS. For those platforms we can treat Canvas 2D as a fallback and deliver an experience that we know will work—albeit with potentially lower performance or less crisp graphics than its WebGL counterpart. Or we may be targeting power-challenged environments like certain smartphones where the GPU consumes battery quickly, and thus ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Programming 3D Applications in HTML5 and WebGL

Programming 3D Applications in HTML5 and WebGL

Tony Parisi
WebGL Beginner's Guide

WebGL Beginner's Guide

Diego Cantor, Brandon Jones

Publisher Resources

ISBN: 9781449363918Errata Page