摘要: # 清除缓冲区并绘制图形 前文中已经准备好了webgl程序和绘制所用的数据,但是在绘制图像之前,还要对画布进行处理。 ## 清除缓冲区 由于图像的绘制是一帧一帧绘制,每一帧针对当前的状态,计算屏幕上每个像素的颜色,得到最终的绘制结果。这些状态被保存在一个叫帧缓冲区的地方。帧缓冲区不仅能存储颜色数据, 阅读全文
posted @ 2023-07-24 13:32 李煎饼_GISer 阅读(137) 评论(0) 推荐(0) 编辑
摘要: # 获取shader变量地址及赋值 上一节创建了WebGL程序对象,创建好program对象后,对象中包含顶点着色器和片元着色器,着色器中含有变量,我们需要对其进行赋值后才能够进行绘制。 着色器代码如下: ```javascript const VSHADER_SOURCE = /* glsl */ 阅读全文
posted @ 2023-07-24 13:31 李煎饼_GISer 阅读(34) 评论(0) 推荐(0) 编辑
摘要: # WebGL程序program对象的创建 program对象由**顶点着色器对象**和**片元着色器对象**构成,因此,创建program对象包含了两部分,一个是着色器对象的创建,一个是program对象的创建。 ## 总体流程 1. 创建顶点着色器对象 2. 创建片元着色器对象 3. 创建`pr 阅读全文
posted @ 2023-07-24 13:31 李煎饼_GISer 阅读(53) 评论(0) 推荐(0) 编辑
摘要: # 获取WebGL上下文 ## 获取上下文 WebGL上下文是从``标签中获取到的,通过`canvas`对象的`getContext()`函数可以获取`WebGLRenderingContext`。 跟据参数的不同,`getContext()`函数可以获取不同种类的渲染上下文。 ### 接口 **` 阅读全文
posted @ 2023-07-24 13:30 李煎饼_GISer 阅读(340) 评论(0) 推荐(0) 编辑