WebGL 是一项在网页上渲染三维图形的技术,也是HTML5 草案的一部分。
《WebGL编程指南》的主要篇幅讲解了WebGL 原生API 和三维图形学的基础知识,包括渲染管线、着色器、矩阵变换、着色器编程语言(GLSL ES)等等,也讲解了使用WebGL 渲染三维场景的一般技巧,如光照、阴影、雾化等等。《WebGL编程指南》提供了丰富的示例程序供读者钻研,也提供了极具价值的附录供读者参考。
《WebGL编程指南》适合有一定前端开发基础,希望学习WebGL,但对三维图形学缺乏了解的程序员们阅读。
作者简介
关于作者
Kouichi Matsuda 博士是多媒体产品用户界面和用户体验设计方面的专家。他先后供职于日本电气(NEC)、索尼(Sony) 研发中心、索尼(Sony) 计算机科学实验室,曾经做过产品研发,也做过科学研究,最终回到产品研发的岗位。目前,他是用户体验和人机交互领域的首席研究员,负责多款消费类电子产品的设计。他曾经设计了社交三维虚拟世界“PAW”,也曾经参与过VRML97(ISO/IEC 14772-1:1997) 标准的开发工作,在VRML和X3D(WebGL 的前身) 社区中仍然非常活跃。他撰写过15 本计算机技术
的书籍,并翻译过25 本相关书籍。他专长于用户体验、用户界面、人机交互、自然语言处理和面向娱乐的网络设备,以及接口代理系统等领域。他不仅对技术领域的新鲜事物充满热情,还热衷于温泉、夏季的海滩、红酒和漫画(为此他已经沉迷于绘制插画一段时间了)。他在东京大学工程系获得了博士学位,你可以通过WebGL.prog.guide@gmail.com 联系他。
Rodger Lea 博士是卑诗大学媒体与图像跨学科中心的兼职教授,对多媒体和分布式计算等领域很感兴趣。他和他带领的研究小组在学术和工业领域耕耘超过20 年,参与制定了VRML97 标准,开发了多媒体操作系统、可交互数字电视原型,并领导了家用多媒体网络标准的制定工作。他发表了60 多篇学术论文,著有3 本技术书籍,并拥有12 项专利。目前,他的研究集中在探索发展中的互联网,但他仍然对有关多媒体和图形学的一切抱有热情。
使用WebGL,你可以在浏览器中,不依赖任何插件创建出精美的可交互三维图形。WebGL技术使得创建新一代3D网页游戏、用户界面、数据可视化方案成为可能,这些程序能够运行任何支持标准浏览器的PC、智能手机、平板电脑、家用游戏机或其他设备上。《WebGL编程指南》将会帮助你快速入门学习可交互的WebGL 3D编程,即使你还不了解HTML5、JavaScript、三维图形学理论、数学基础和OpenGL也没有关系。
你将会一步一步地学习真实的示例程序。随着示例程序从简单变复杂,你也将逐渐掌握使用WebGL开发虚拟逼真的网页和三维图形的技能。多媒体、三维图形学和WebGL领域的先驱者Kouichi Matsuda博士和Rodger Lea博士在这本书中提供了易于上手、重点清晰的WebGL教程,以及共计100个可下载的示例程序,每个程序都讨论了一个具体的WebGL话题。
你将从基本的技术比如渲染、动画、为三角形贴上纹理开始,一路学习到高级的WebGL技术,比如雾化、阴影、切换着色器、显示由Blender等建模工具创建的三维模型。这本书并不仅仅向你传授实践方法,同时也会向你提供一个小型的代码库,方便你在学习完本书后,开始编写自己的程序。
本书的内容包括:
√ WebGL的起源、核心概念、特性、优势以及与其他Web标准的结合;
√ canvas和基本的WebGL函数如何协作以显示三维图形;
√ 使用OpenGL ES着色器语言(GLSL ES)编写着色器代码;
√ 三维场景渲染:表示用户视野、控制可视空间、裁剪、三维对象创建、透视;
√ 通过光照和层次结构模型产生更真实的效果;
√ 高级技巧:对象操作,HUD、混合、着色器切换等等;
√ 极具价值的附录,涵盖了从坐标系统到矩阵、从着色器加载到浏览器设置等诸多关键知识点。
1