WEBGL 知识点整理

204 阅读1分钟

1.canvas

WebGL采用HTML5中引入的元素,他定义了网页上的绘图区域。也就是提供了画布。

var canvas = document.getElementById('canvas');

2.为webGL获取绘图的上下文

通常来说,我们应该用canvas.getContex()来获取绘图的上下文,但是在获取webGL绘图上下文时,canvas.getContext()函数接受的参数,在不同浏览器中会不同,所以我们写一个函数getWebGLContext()来隐藏不同浏览器之间的差异。

var gl = getWebGLContext(canvas);

3. 设置背景色&清空canvas

gl.clearColor(0.0,0.0,0.0,1.0);//设置背景颜色
gl.clear(gl.COLOR_BUFFER_BIT);//清空canvas

用指定的背景色清空(即用背景色填充,擦除已经绘制的内容)绘图区域。

4.初始化着色器

着色器程序运行在WebGL系统(WebGL程序分为运行在javaScript系统(上面的部分)和webgl系统)。

//顶点着色程序
var VSHADER_SOURCE = 
'void main(){\n '+
' gl_Position = vec4(0.0,0.0,0.0,1.0);\n' +
' gl_PointSize = 10.0;\n' +
}\n';

//片元着色器
var FSHADER_SOURCE =
'void main(){\n '+
' gl_Position = vec4(0.0,0.0,0.0,1.0);\n' +
}\n';
    

function main(){
    ……
    if(!initShader(gl,VSHADER_SOURCE,FSHADER_SOURCE);
}