我成功地通过webgl绘制多纹理立方体。 但是,我应该与其他webgl上下文共享画布。 如果我在其他webgl上下文绘制的对象上绘制此多维数据集,我如何绘制我的多维数据集并重绘,移动,...其他上下文中没有其他对象。
function start() {
...
if (gl) {
gl.clearColor(0.0, 0.0, 0.0, 0.0);
gl.clearDepth(1.0);
gl.enable(gl.DEPTH_TEST);
gl.depthFunc(gl.LEQUAL);
...
}
function drawScene() {
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
...
}
答案 0 :(得分:1)
您无法与另一个WebGLRenderingContext共享画布(至少截至2016/08/05)。
通常在WebGL中,您需要每帧重绘一切。 WebGL is a rasterization library不是场景图。它没有立方体的概念。它只是渲染像素。如果你想只移动一堆立方体中的一个立方体,你需要保留一些跟踪所有立方体的数据结构(如数组或树)。位置,方向等。更新一个或多个立方体的位置,然后全部绘制。
您会发现这几乎是所有WebGL程序所做的事情