正如我们
上周报道的,国外开发者Francois Remy在泄露版Windows Blue附带的Internet Explorer 11中发现,WebGL接口已经封装完成,但功能上还未能开放支持。在这之后,另一名开发者Rafael Rivera继续深入挖掘,竟然发现了在此版本的Internet Explorer 11中开启WebGL支持的方法。
)aV\=a |A 实际上方法简单地称奇。首先你必须已经安装了Windows 8 Blue build 9364和最新的显卡驱动(系统自带的显卡驱动在OpenGL方面支持不足),然后只需要简单地导入以下的注册表脚本即可。
rE&`G[(b /~8<;N>,+ Windows Registry Editor Version 5.00
^~p^N < [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl]
?g~w6|U(r [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_WEBGL]
vb&1 S
"iexplore.exe"=dword:00000001
TO,XN\{y [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_WEBGL_HLSL_SHADERS]
P' ";L6h "iexplore.exe"=dword:00000000
)}Vb+ lmsO
6=I4F 需要特别值得注意的是其中最后一个FEATURE_WEBGL_HLSL_SHADERS的键值,如果设置为1,那么会让Internet Explorer 11使用IESL代替GLSL作为着色器语言。如果设置为0,则符合先在大多数WebGL应用的习惯。
8C[W;&Y= 目前IE 11对WebGL的支持度仍然非常有限,你可以把一下代码另存为HTML文件,然后在IE 11中打开,你会发现网页中出现一片蓝色的区域,而这正代表着网页成功获得了名为“experimental-webgl”的3D绘制上下文—— Internet Explorer 11终于支持WebGL了!
*y}<7R OI8Hf3d= <body onload="demo()">
)=k8W9i8b <canvas style="height: 100%; width: 100%" id='webgl' />
?cZ#0U </body>
I^u$H& `rwzCwA1 <script>
-(Zi var gl = {};
C;m,{MD function demo()
tx+KxOt9Y {
O BCH%\;g var canvas = document.getElementById("webgl");
Ar;uq7c,G try
S-5|t]LV {
k2-:!IE gl = canvas.getContext("experimental-webgl");
@)\{u$ } catch(e) { }
'XbrO|% 342m=7lK if (gl) {
G1!yPQa7d gl.clearColor(0, 0.678, 0.937, 1.0);
G\;a_]Q gl.clear(gl.COLOR_BUFFER_BIT);
mY'c<>6t }
u2FD@Xq? }
1DTA Dh0 </script>
q!qOy/}D &