正如我们
上周报道的,国外开发者Francois Remy在泄露版Windows Blue附带的Internet Explorer 11中发现,WebGL接口已经封装完成,但功能上还未能开放支持。在这之后,另一名开发者Rafael Rivera继续深入挖掘,竟然发现了在此版本的Internet Explorer 11中开启WebGL支持的方法。
*u{.K:.I 实际上方法简单地称奇。首先你必须已经安装了Windows 8 Blue build 9364和最新的显卡驱动(系统自带的显卡驱动在OpenGL方面支持不足),然后只需要简单地导入以下的注册表脚本即可。
kyo ,yD Yg]f2ke Windows Registry Editor Version 5.00
2aje$w- [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl]
usTCn3u [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_WEBGL]
,m b3H "iexplore.exe"=dword:00000001
c\b>4 &n [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_WEBGL_HLSL_SHADERS]
xBG1up<z "iexplore.exe"=dword:00000000
!3&vgvr sTqB%$K} 需要特别值得注意的是其中最后一个FEATURE_WEBGL_HLSL_SHADERS的键值,如果设置为1,那么会让Internet Explorer 11使用IESL代替GLSL作为着色器语言。如果设置为0,则符合先在大多数WebGL应用的习惯。
`(a^=e5 目前IE 11对WebGL的支持度仍然非常有限,你可以把一下代码另存为HTML文件,然后在IE 11中打开,你会发现网页中出现一片蓝色的区域,而这正代表着网页成功获得了名为“experimental-webgl”的3D绘制上下文—— Internet Explorer 11终于支持WebGL了!
^c7L!F v/haUPWF\ <body onload="demo()">
X0$_KPn <canvas style="height: 100%; width: 100%" id='webgl' />
T+ t-0k </body>
HYH!; 6e*b;{d <script>
H5I#/j var gl = {};
r4lG 5dV function demo()
A{o{o++ {
(os7Q? var canvas = document.getElementById("webgl");
f\^QV try
^9RBG#ud {
F3'X gl = canvas.getContext("experimental-webgl");
C(P$,;6 } catch(e) { }
Z7/dRc
o%5bg( if (gl) {
o|W? a#_\ gl.clearColor(0, 0.678, 0.937, 1.0);
Y"jDZG? gl.clear(gl.COLOR_BUFFER_BIT);
<Gw<