Introduction to WebGL Programming

Sunday, 10 August 2:00 PM - 5:15 PM | Vancouver Convention Centre, West Building, Rooms 109-110

Introduction to WebGL Programming

OpenGL is the most widely available library for creating interactive computer graphics applications across all of the major computer operating systems. Its uses range from creating applications for scientific visualization to computer-aided design to interactive gaming and entertainment, and with each new version, its capabilities reveal the most up-to-date features of modern graphics hardware.

In recent years, OpenGL has undergone numerous updates that have fundamentally changed how programmers interact with the application programming interface and the skills required for being an effective OpenGL programmer. The most notable of those changes have been the introduction of shader-based rendering and the support for WebGL isn all recent browsers. The use of programmable shaders, introduced into the API many years ago, has expanded to subsume almost all functionality in OpenGL and diminish immediate-mode functions. Support for WebGL, JavaScript implementation of OpenGL ES 2.0, and widespread use of HTML5 have brought OpenGL functionality to the eb.

This course is an introduction to the shader-based WebGL. It begins with an overview of the WebGL pipeline and how WebGL executes within a browser environment, then focuses on the basic shader-based pipeline, which requires an application to provide both a vertex shader and a fragment shader. The course introduces the OpenGL Shading Language and uses it to develop simple vertex and fragment shaders. It also includes an overview of key graphics concepts: the synthetic camera model, transformations, viewing, and lighting. Instructors share complete examples, including the required shaders and the interface to the application program and the HTML5 environment.

Course Schedule

2 pm
Greeting and Course Overview

2:10 pm
WebGL Application Development

2:35 pm
Displaying Geometry
Angel and Shreiner

3 pm
Shaders and GLSL

3:30 pm

3:45 pm
Buffering, Animation and Interaction

4:10 pm

4:30 pm

4:45 pm
Texture Mapping

5:05 pm
Wrap Up; Questions and Answers
Angel and Shreiner

Edward Angel
University of New Mexico

Dave Shreiner
ARM, Inc.