HTML canvas元素令人印象深刻,人们正在做的事情令人兴奋。当我研究开发人员使用的javascript时,如果我所看到的内容符合“WebGL”这个术语,那么它并不总是很明显。什么是WebGL和不是WebGL之间的界线在哪里?
答案 0 :(得分:6)
如果他们使用的是WebGLRenderingContext
,那就是WebGL。请参阅:https://www.khronos.org/registry/webgl/specs/1.0/
该文件中的示例1显示:
var canvas = document.getElementById('canvas1');
var gl = canvas.getContext('webgl');
答案 1 :(得分:0)
目前,<canvas>
元素有两种使用方式: 2D 和 WebGL 。那些叫context
。
您使用canvas.getContext('yourContextHere');
获取上下文。确定使用哪个上下文的最简单方法是,只搜索getContext
并查看用作第一个参数的内容。
有一个2d
上下文,webgl
有很多变体,例如experimental-webgl
,webkit-3d
和其他一些,但它们通常包含{{1}其中包含webgl
字词。
另一个很大的区别是尺寸,2d上下文显然只有2个维度,仍然可以用矩阵做一些数学并模拟3个维度,这种技术有时用于绘制一些简单的3D感觉。但这种情况很少见。
WebGL基于OpenGL ES 2.0,具有自己的功能,完全不同于2D环境。因此,如果您了解其中的一部分,那么很容易区分它们。