随笔分类 -  WebGL 原生 API 笔记

摘要:现实中多数物体不是光源,有颜色是因为它们反射全色光的选择性。最简单的WebGL程序不考虑光照而贸然为物体定义颜色,实际上将物体当成了光源。实现光照的方法是,对物体原始的颜色值乘以光照影响因子进行“修正”。光照因子计算的过程(即本篇博文的重点)依赖于光的颜色、类型(环境光、平行光、点光源)和物体表面的反射类型(漫反射和镜面反射)。 阅读全文
posted @ 2012-10-08 16:33 一叶斋主人 阅读(5760) 评论(2) 推荐(2) 编辑
摘要:WebGL中帧的绘制过程并非“一蹴而就”,而是按照一定顺序在幅面上绘制所有的元素。当不同的元素占用同一个像素时,可能需要深度检测(遮挡)或混合(透明)处理,本篇博文对此进行总结,此外还补充了如何从图片文件中加载纹理。 阅读全文
posted @ 2012-10-01 15:03 一叶斋主人 阅读(4241) 评论(0) 推荐(0) 编辑
摘要:着色器是运行在显卡中的指令,对于矩阵运算和浮点运算作过特别的优化,模型视图矩阵和投影矩阵对顶点坐标的处理在着色器中进行;缓冲区是JavaScript对象,为着色器准备三维空间中的模型数据(即有序的顶点坐标)。本篇博文总结顶点坐标数据经过缓冲区推送到着色器并在屏幕上绘制出的过程。 阅读全文
posted @ 2012-09-21 20:24 一叶斋主人 阅读(6674) 评论(3) 推荐(3) 编辑
摘要:模型视图矩阵和投影矩阵解决了3D计算机图形学最基本的问题:描述三维空间中点的运动、将三维点坐标映射到二维平面上去。本篇博文着重总结了这两个矩阵的推导过程,以供参考。 阅读全文
posted @ 2012-09-12 12:28 一叶斋主人 阅读(13309) 评论(5) 推荐(6) 编辑