1

我是刚刚开始接触3D,在网上看了一些文章,比较疑惑webGL与Canvas的关系,不知道我这样理解对不对:canvas的3D渲染是基于webGL的,当使用canvas的3D渲染的时候,实际上调用的就是webGL?是这样么?

方how 825
2016-07-11 提问
4 个回答
3

了解之前可以先看看OpenGL
OpenGL是 底层的驱动级的图形接口(是显卡有直接关系的) 类似于 DirectX
但是这种底层的OpenGL是 寄生于浏览器的JavaScript无法涉及的
但是为了让Web拥有更强大的 图形处理能力 2010年时候WebGL被推出来
WebGL允许工程师使用JS去调用部分封装过的 OpenGL ES2.0标准接口去 提供硬件级别的3D图形加速功能

三者的关系是 JavaScript -> WebGL -> OpenGL ->.... -> 显卡 并把最终渲染出来图形 呈现到Canvas

2

canvas就是画布,只要浏览器支持,可以在canvas上获取2D上下文和3D上下文,其中3D上下文一般就是webgl。

0

Canvas 是HTML5提供的一个特性,你可以把它当做一个载体,简单的说就是一张白纸。而Canvas 2D 相当于获取了内置的二维图形接口,也就是二维画笔。Canvas 3D 是获取基于 WebGL的图形接口,相当于三维画笔。你可以选择不同的画笔在上面作画。

-1

canvas应该是2D画布,3D的话就是用webgl。

撰写答案

推广链接