Skip to main content

WebGL

WebGL(Web图形库)是一个JavaScript API,它允许我们直接在浏览器中实现交互式 3D 图形,可在任何兼容的Web浏览器中渲染高性能的交互式3D和2D图形,而无需使用插件。WebGL通过引入一个与OpenGL ES 2.0非常一致的API来做到这一点,该API可以在HTML5 <canvas>元素中使用

WebGL 教程#

参考 WebGL 程序由javascript的控制代码,和在计算机的图形处理单元(GPU, Graphics Processing Unit)中执行的特效代码(shader code,渲染代码) 组成. WebGL 元素可以和其他 HTML 元素混合使用,并且可以和网页其他部分或者网页背景结合起来。

准备3D渲染#

创建 canvas 元素

<canvas id="glcanvas" width="640" height="480">    </canvas>

准备 WebGL 上下文#

main()// 从这里开始function main() {    const canvas = document.querySelector("#glcanvas");    // 初始化WebGL上下文    const gl = canvas.getContext("webgl");
    // 确认WebGL支持性    if (!gl) {        alert("无法初始化WebGL,你的浏览器、操作系统或硬件等可能不支持WebGL。");        return;    }
    // 使用完全不透明的黑色清除所有图像    gl.clearColor(0.0, 0.0, 0.0, 1.0);    // 用上面指定的颜色清除缓冲区    gl.clear(gl.COLOR_BUFFER_BIT);}

参考#

WebGL介绍
WebGL基础

WebGL库#

  1. Three.js ( Github ) 是一个轻量级的 3D 引擎,具有非常低的复杂性
  2. PhiloGL的构建侧重于 JavaScript 的良好实践和习惯用法。
  3. GLGE 有一些更复杂的功能,比如骨骼动画和动画材质。
  4. J3D 不仅允许您创建自己的场景,还可以将场景从Unity导出到 WebGL。