第1章 WebGL概述
WebGL,是一项用来在网页上绘制和渲染复杂三维图形(3D图形),并允许用户与之进行交互的技术。传统意义上来说,只有高配置的计算机或专用的游戏机才能渲染三维图形。而现在,随着个人计算机和浏览器的性能越来越强,使用便捷通用的Web技术创建渲染三维图形已经成为可能。WebGL技术结合了HTML5和JavaScript,允许开发者在网页(Web页面)上创建和渲染三维图形。这项技术将在开发下一代易用直观用户界面和生产互联网内容上发挥重要作用,图1.1中展示了几个例子。可以预见,在接下来的若干年中,WebGL技术将在传统的个人计算机、消费电子产品(如智能手机、平板电脑等)等多种电子设备上有所应用。
图1.1 浏览器中复杂的三维图形©2011 Hiromasa Horie (左),2012 Kouichi Matsuda (右)
HTML5作为最新的HTML标准,扩展了传统HTML的特性,如二维图形、网络传输、本地数据存储等。HTML5时代的到来使浏览器正在迅速地从简单的展示工具转变为复杂的应用平台,人们希望网页不仅仅由二维图形组成。WebGL被设计出来的目的,就是在网页上创建三维的应用和用户体验。
从传统意义上来说,为了显示三维图形,开发者需要使用C或C++语言,辅以专门的计算机图形库,如OpenGL或Direct3D,来开发一个独立的应用程序。现在有了WebGL,我们只需要向已经熟悉的(如果你是一名Web前端开发者)HTML和JavaScript中添加一些额外的三维图形学的代码,就可以在网页上显示三维图形了。
WebGL是内嵌在浏览器中的,你不必安装插件和库就可以直接使用它。而且,因为它是基于浏览器(而不是基于操作系统)的,你可以在多种平台上运行WebGL程序,如高配置的个人计算机,或消费类电子产品(如平板电脑和智能手机)。
这一章将简要介绍WebGL,归纳它的关键特性和优势,并介绍它的起源。这一章还将解释WebGL和HTML5、JavaScript之间的关系,以及简单说明WebGL程序的结构。