对计算机相关图形学了解的读者应该知道OpenGL ES API标准是参考OpenGL的API指定的,而WebGL参考的以OpenGL ES的标准。WebGl.0标准是参考OpenGL ES 2.0 API标准制定的,具体可以访问 WebGL Specification。WebGL2.0 API参考的是OpenGL ES 3.0 API标准制定的,具体说明可以访问 WebGL 2 Specification。现在最新版的PC端和移动端浏览器基本都能够支持WebGL1.0,最新版微信、QQ 内置浏览器同样支持WebGL1.0,不过WebGL2.0的支持还不够广泛,不过谷歌浏览器chrome 56版本和火狐浏览器firefox 51版本,能够支持WebGL2.0标准。
//Javascript语言ES6标准之前的版本使用var
var gl = canvas.getContext('webgl2');//ES6和ES7版本最新引入的关键词let,与var一样都是声明变量的关键字,具体不同可以查看ECMAScript2015或ECMAScript2016标准
let gl = canvas.getContext('webgl2');为了兼容性,有些浏览器还没有支持WebGL2.0,可以用如下代码
let gl = canvas.getContext('webgl2'); if (!gl) { gl = canvas.getContext('webgl');//如果不支持WebGL2.0,选择执行WebGL1.0 }
绿色 表示该版本浏览器支持WebGL2.0,红色表示该版本浏览器不支持WebGl2.0标准,数字代表该浏览器的版本号 目前来看只有火狐、谷歌、Opera的新版本支持WebGl2.0,随着时间的推移所有的浏览器支持WebGl2.0是在所难免的。
图元重启主要是使用WebGL API或OpenGL ES API时,多次调用 DrawArrays 或 DrawElements来实现多个不连续的图形绘制,涉及到图元重启的概念。 在WebGL2.0标准中,图元重启总是默认启动的(Primitive Restart is Always Enabled)。
等待更新..........