Javascript WebGL是否清晰()用于电缆?

Javascript WebGL是否清晰()用于电缆?,javascript,webgl,Javascript,Webgl,此JScript/WebGL代码段应将画布涂成黄色 gl.clearColor(1.0, 1.0, 0.5, 1.0); gl.clear(gl.COLOR_BUFFER_BIT); 它可以在FF和Chrome中实现这一点。然而,IE 11似乎在需要时调用clear(),而不仅仅是交换缓冲区(?)。很多时候画布背景都是白色的,导致严重的闪烁。在页面加载时,它根本不调用clear() 是否可以强制清除()?如果我认为这是错误的,我是否正确理解OpenGL规范 *虽然使用属性{preserveD

此JScript/WebGL代码段应将画布涂成黄色

gl.clearColor(1.0, 1.0, 0.5, 1.0);
gl.clear(gl.COLOR_BUFFER_BIT);
它可以在FF和Chrome中实现这一点。然而,IE 11似乎在需要时调用clear(),而不仅仅是交换缓冲区(?)。很多时候画布背景都是白色的,导致严重的闪烁。在页面加载时,它根本不调用clear()

是否可以强制清除()?如果我认为这是错误的,我是否正确理解OpenGL规范


*虽然使用属性{preserveDrawingBuffer:true}创建上下文可以缓解问题,但它会降低性能,并且无法修复初始页面加载。。。这里有一个片段。
var canvas=document.getElementById(“cnv”);
var gl=canvas.getContext(“webgl”)||
getContext(“实验性webgl”,{preserveDrawingBuffer:true});
gl.clearColor(1,1,0.5,1);
总账清除(总账颜色缓冲位);
函数刷新(){
gl.clearColor(Math.random(),Math.random(),Math.random(),1);
总账清除(总账颜色缓冲位);
}
var按钮=document.getElementById(“刷新”);
button.onclick=刷新



刷新
Microsoft出于“安全原因”多年来拒绝实施WebGL,因为他们最近增加了对WebGL的支持,这是很正常的。请提交一个bug:注意:在您的代码中,只有当它无法创建带有“WebGL”的上下文时,才要求保留DrawingBuffer:true
。啊,感谢Pierre提供的历史记录,并认为这是一个bug,太多了。:)谢谢@gman的链接!不知道在哪里归档。请注意:这是故意的。IE退回到“实验性webgl”,IE需要一点额外的“webgl在Internet Explorer 11中部分受支持”由于“安全原因”,微软多年来拒绝实施webgl,因为他们最近增加了对webgl的支持,这是正常的,它有缺陷。提交一个缺陷:注意:在你的代码中,你要求
preserveDrawingBuffer:true
只有当它无法创建带有“webgl”的上下文时。啊,感谢Pierre提供的历史记录,并认为这也是一个缺陷。:)谢谢@gman的链接!不知道在哪里归档。请注意:这是故意的。IE退回到“实验性webgl”,IE需要额外的“webgl在Internet Explorer 11中部分受支持”