无名图书
收藏
WebGL编程指南
【美】Kouichi Matsuda
,
Rodger Lea(松田浩一
,
罗杰•李)
出版社
电子工业出版社
出版时间
2014-05-31
ISBN
9787121229428
评分
★★★★★
标签
编程
书籍介绍
这不是一本教你快速做出炫酷网页3D效果的畅销书,而是一份把'屏幕上的画面究竟如何生成'讲得彻头尾的底层手册。它坚持讲解原生API,带你亲手搭建顶点着色器与片元着色器,理解光栅化、缓冲区对象、MVP矩阵这些被three.js等上位库层层包裹的渲染原理。读者反馈中最打动人的,正是这种'读完忽然通气'的通透感——它把shader这种曾让人望而生畏的概念拆到能逐行读懂。需要提醒的是:全书500页只讲基础,示例每行代码都做了讲解,适合有一定前端基础、却对图形学缺乏了解的程序员;若你已熟悉blender、UE等工具,会更易上手。唯一需留意的是书中存在若干翻译与勘误,建议配合勘误表阅读。
作者简介
关于作者 Kouichi Matsuda 博士是多媒体产品用户界面和用户体验设计方面的专家。他先后供职于日本电气(NEC)、索尼(Sony) 研发中心、索尼(Sony) 计算机科学实验室,曾经做过产品研发,也做过科学研究,最终回到产品研发的岗位。目前,他是用户体验和人机交互领域的首席研究员,负责多款消费类电子产品的设计。他曾经设计了社交三维虚拟世界“PAW”,也曾经参与过VRML97(ISO/IEC 14772-1:1997) 标准的开发工作,在VRML和X3D(WebGL 的前身) 社区中仍然非常活跃。他撰写过15 本计算机技术的书籍,并翻译过25 本相关书籍。他专长于用户体验、用户界面、人机交互、自然语言处理和面向娱乐的网络设备,以及接口代理系统等领域。他不仅对技术领域的新鲜事物充满热情,还热衷于温泉、夏季的海滩、红酒和漫画(为此他已经沉迷于绘制插画一段时间了)。他在东京大学工程系获得了博士学位,你可以通过
[email protected]
联系他。 Rodger Lea 博士是卑诗大学媒体与图像跨学科中心的兼职教授,对多媒体和分布式计算等领域很感兴趣。他和他带领的研究小组在学术和工业领域耕耘超过20 年,参与制定了VRML97 标准,开发了多媒体操作系统、可交互数字电视原型,并领导了家用多媒体网络标准的制定工作。他发表了60 多篇学术论文,著有3 本技术书籍,并拥有12 项专利。目前,他的研究集中在探索发展中的互联网,但他仍然对有关多媒体和图形学的一切抱有热情。 关于译者 谢光磊,毕业于南京大学,目前为中科院在读硕士,即将成为淘宝UED 的一名前端工程师。因一次偶然的机会接触WebGL 而对其萌生兴趣,并愿意持久深入地研究这项技术。个人站点为 www.xieguanglei.com。
AI导读
核心看点
系统讲解WebGL原生API与三维图形学基础
深入剖析着色器、矩阵变换及渲染管线原理
提供丰富示例代码,涵盖光照阴影等进阶技巧
读者共识
讲解细致循序渐进,是公认的优秀入门读物
配合源码研读,对理解OpenGL底层逻辑极有帮助
虽API较底层,但能彻底打通图形学知识盲区
精彩摘录
"
WebGL 系统由两部分组成,即定点着色器和片元着色器。 着色器运行在 WebGL 系统中,而不是 JavaScript 程序中。 WebGL 程序包括运行在浏览器中的 JavaScript 和运行在 WebGL 系统的着色器程序这两个部分。 顶点着色器指定点的位置和尺寸,片元着色器将指定点的颜色。
"
"
顶点着色器控制点的位置和大小,片元着色器控制点的颜色。如前所述,片元就是现实在屏幕上的一个像素(严格意义来说,片元包括这个像素的位置、颜色和其他信息)。
"
"
WebGL 系统中的绘制操作实际上是在颜色缓冲区中进行绘制的,绘制结束后系统将缓冲区中的内容显示在屏幕上,然后颜色缓冲区就会被充值,其中的内容就会丢失
"
"
WebGL 提供了一种很方便的机制。即缓冲区对象(buffer object),它可以一次性地向着色器传入多个顶点数据。缓冲区对象是 WebGL 系统中的一块内存区域,我们可以一次性地向缓冲区对象中填充大量的顶点数据,然后将这些数据保存在其中,供顶点着色器使用。
"
"
由于目的是为了将三角形旋转 90 度,我们得事先计算 90 度的正弦值和余弦值。在 JavaScript 中算出这两个值,再传给顶点着色器的两个 uniform 变量。 你也可以将旋转的角度传入顶点着色器,并在着色器中计算正弦值和余弦值。但是,实际上所有顶点旋转的角度都是一样的,在 JavaScript 中算好正弦值和余弦值,然后再传递进去,只需要计算一次,效率更高。
"
"
发生在顶点着色器和片元着色器之间从图形到片元的转化,又称为图元光栅化(rasterzation process)。
"
"
显示在屏幕上的三角形是由片元(像素)组成的,所以还需要将图形转化为片元,这个过程被称为光栅化(raterization)。
"
目录
第1 章 WebGL 概述...................... 1
WebGL 的优势 ...........................................3
使用文本编辑器开发三维应用 ...............3
轻松发布三维图形程序 .................................4
充分利用浏览器的功能 ...........................5
显示全部
用户评论
图文并茂,讲解清晰
webgl在我看来国内还是比较少的,做的好的感知不到多少,感觉这是我的方向呀,加油
非常容易理解,按照实践应用的顺序写,读完特别通气。。。还是很基础的东西,但要不是讲得这么细,shader还是看不懂的。
之前读opengles3.0编程指南,完全不知所云,一度怀疑自己的智商。直到遇到这本书,才算搞明白,真是相见恨晚。这才是真正的入门书,读完之后茅塞顿开。
再读一遍 https://webglfundamentals.org/webgl/lessons/zh_cn/
对WebGL基础介绍详细,翻译的很好。 着色器,点线三角形绘制,变换矩阵,MVP 矩阵,光照和层次模型。入门 WebGL很好的参考,读完可以轻松实现一个机器人行走动画。 但已经2022年了,WebGL 逐步淘汰,应该开始学习 WebGPU
有一些小错误,挺让人费劲的,不过整本书读下来很顺畅
少有的真的由浅入深让人能看懂的技术书。
这本书真的是一本非常好的入门书籍,虽说只是入门,到高级技术中也有很多实用干货,我的两个bug,就从这里找到了解决方案。网上还找到跟本书例子一模一样的教程,配合食用更佳。收获颇丰的一周。发现几处错别字、拼写错误,但是瑕不掩瑜。
作者循序渐进,娓娓道来,很适合我这种初学者,帮我理清了很多概念。
电子工业出版社的其他书籍
查看全部
学习观 : 从感觉懂了到真正学会
于建国
货币银行学(第2版)
(美)迈克尔·W.布兰德尔
GEO不是你想的那样:AI决策时代的增长重构
卢鑫
更年有方:重塑肠道微生态,稳稳过好更年期
辛西娅·瑟洛(Cynthia Thurlow)
AI时代的个人成长·投资·财富自由
周华明
世界模型
高承实
下载
收藏