[ WebGL 月影带练 | 青训营笔记]

75 阅读2分钟

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

光栅(Raster):几乎所有的现代图形系统都是基于光栅来绘制图形的,光栅就是指构成图像的像素阵列。
像素(Pixel):一个像素对应图像上的一个点,它通常保存图像上的某个具体位置的颜色等信息。
帧缓存(Frame Buffer):在绘图过程中,像素信息被存放于帧缓存中,帧缓存是一块内存地址。
CPU (Central Processing Unit):中央处理单元,负责逻辑计算。
GPU (Graphics Processing Unit):图形处理单元,负责图形计算。

image.png

GPU由大量的小运算单元构成 每个运算单元只负责处理很简单的计算每个运算单元彼此独立 因此所有计算可以并行处理

WebGL在电脑的GPU中运行。因此你需要使用能够在GPU上运行的代码。 这样的代码需要提供成对的方法。每对方法中一个叫顶点着色器, 另一个叫片断着色器,并且使用一种和C或C++类似的强类型的语言 GLSL。 (GL着色语言)。 每一对组合起来称作一个 program(着色程序)。

作者:用户5476954747023
链接:juejin.cn/post/713118…
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

WebGL和OpenGL

image.png

WebGL 开始

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

Transforms

image.png

旋转+缩放是线性变换

image.png

3D标准模型的四个齐次矩阵(mat4)
1.投影矩阵Projection Matrix
2.模型矩阵Model Matrix
3.视图矩阵View Matrix
4.法向量矩阵Normal Matrix

标题:「WebGL 月影带练」第五届字节跳动青训营 - 前端专场

网址:live.juejin.cn/4354/WebGL