![1.png](https://static.golangjob.cn/231018/6f8aa89fc7d8c5c9143206897d302a8a.png)
[38章]Three.js可视化系统课程WebGL(23年10月最新版+700多课时),视频+源码+课件,全网最全系列!
WebGL 是一个 JavaScript API,用于在任何兼容的 Web 浏览器中呈现交互式 3D 图形,而无需使用插件。WebGL 应用程序由用 JavaScript 编写的控制代码和在计算机 GPU 上执行的特殊效果代码组成。WebGL 元素可以与其他 HTML 元素混合,并与页面或页面背景的其他部分组合。
WebGL 浏览器报告检查 Web 浏览器中的 WebGL 支持,生成 WebGL 设备指纹识别,并显示其他 WebGL 和 GPU 功能或多或少相关的 Web 浏览器标识。
WebGL在使用图片上有着比Canvas2D更强的限制,就是说WebGL不能随意使用网络获图像, 还有一点需要注意的是WebGL读取本地数据的速度很快。
WebGL 1 可以看成是OpenGL ES 2 的javascript移植, 类似的,WebGL 2 可以看做是OpenGL ES 3 的javascript移植。所以大部分的特性可以去对应到OpenGL ES 3中的特性,当然有些细节上会有出入(比如texture swizzle是不支持)。
这些新特性除了可以从WebGL 2 spec中找到,也可以去寻找OpenGL ES 3的书籍来大略了解。当然我非常推荐到我们的WebGL 2 Samples Pack去直接寻找新的特性及其用法,一般每个特性都有对应的sample。比较重要的特性有:uniform buffer objectvertex array objecttransform feedbackmultisample fbomultiple render targets一系列texture相关:texture lod, texture 2d array, texture 3d, 压缩格式texture等等。
WebGL是什么
GPU ≠ WebGL ≠ 2D
WebGL是浏览器上的OpenGL
需要一定计算机图形学基础和线性代数基础
WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。
显然,WebGL技术标准免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏等等。
和传统的3D方案相比,WebGL具有如下一些优点
。WebGL 是内嵌在浏览器中的,无需安装插件和库就可以直接使用
。可以在多平台上运行 WebGL 程序
。让海量数据的二维可视化成为了可能
。开发环境简单,仅需文本编辑器和浏览器就可以编写三维图形程序
有疑问加站长微信联系(非本文作者)