首页 > 解决方案 > AFrame 指定 WebGL 版本

问题描述

AFrame 1.1.0 使用 THREE.js 123,默认情况下现在使用 WebGL2。
一些 AFrame 组件还不能与 WebGL2 一起使用。如果我们可以将 AFrame 与 WebGL1 一起使用,那就太好了。THREE.js 仍然支持 WebGL1 渲染。

标签: three.jsaframe

解决方案


创建渲染器时,您可以将自己的画布和上下文传递给构造函数,而不是让引擎创建自己的。因此,您可以简单地获取<canvas>HTMLElement,从中请求 WebGL1 上下文,并在初始化渲染器时使用它们:

var myCanvas = document.getElementById('myCanvas');
var gl = canvas.getContext('webgl');

var renderer = new WebGLRenderer({
    canvas: myCanvas,
    context: gl
});

推荐阅读