WebGL 月影带练 | 青训营笔记

35 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 十六 天

16. 初始WebGL

Why WebGL / Why GPU?

  • WebGL是什么?

image.png

  • WebGL为什么不像其他前端技术那么简单?

Modern Graphics System

image.png

image.png

The Pipeline

image.png

CPU vs GPU

image.png

WebGL & OpenGL

image.png

web.eecs.umich.edu/~sugih/cour…

WebGL Startup

  1. 创建WebGL上下文
  2. 创建WebGL Program
  3. 将数据存入缓冲区
  4. 将缓冲区数据读取到GPU
  5. GPU执行WebGL程序,输出结果

image.png

Create WebGL Context

image.png

The Shaders

image.png

Create Program

image.png

Data to Frame Buffer

image.png

Frame Buffer to GPU

image.png

Output

image.png

code.juejin.cn/pen/7119692…

WebGL

image.png

code.juejin.cn/pen/7119692…

Mesh.js

image.png

github.com/mesh-js/mes… code.juejin.cn/pen/7119692… code.juejin.cn/pen/7119692…

Polygons

image.png

Draw Polygon with 2D Triangulations

image.png

github.com/mapbox/earc…

3D Meshing

image.png

spritejs.com/demo/#/3d/w…

Transforms

image.png

image.png

Apply Transforms

image.png

code.juejin.cn/pen/7119694…

3D Matrix

3D标准模型的四个齐次矩阵(mat4)

  1. 投影矩阵 Projection Matrix
  2. 模型矩阵 Model Matrix
  3. 视图矩阵 View Matrix
  4. 法向量矩阵 Normal Matrix

Read more

thebookofshaders.com/ github.com/mesh-js/mes… doodle.webgl.group/ spritejs.com/#/ threejs.org/ www.shadertoy.com/ juejin.cn/column/7100…

掘金课程代码

code.juejin.cn/pen/7199169… code.juejin.cn/pen/7199177… code.juejin.cn/pen/7199182… code.juejin.cn/pen/7199186… code.juejin.cn/pen/7199187…