Pywebkitgtk Three.js无法检测WebGL
背景:
- 操作系统:Fedora 16
- 显卡:nVidia Corporation GF106 [GeForce GT 555M SDDR3] (版本 a1)
- Python 版本:2.7.2
- pywebkit-gtk 版本:pywebkitgtk.x86_64:1.1.8-1.fc16,webkitgtk-devel.x86_64 0:1.6.1-1.fc16
Python 使用 pywebkitgtk 来生成一个基本的网页浏览器,在这个过程中,以下设置被设为 True。
setting = webkit.WebView.get_settings();
settings.set_property("enable-scripts", True)
settings.set_property("enable-webgl", True)
settings.set_property("enable-universal-access-from-file-uris", True)
settings.set_property("enable-developer-extras", True)
问题:
浏览器启动没有错误。以下的 JavaScript 被加载到浏览器中:
if( Detector.webgl ){
renderer = new THREE.WebGLRenderer({
antialias: true, // to get smoother output
preserveDrawingBuffer: true // to allow screenshot
});
renderer.setClearColorHex( 0xBBBBBB, 1 );
} else {
Detector.addGetWebGLMessage();
return true;
}
Detector.webgl 的值是 false
如果我在 Chrome 浏览器中运行包含上述 JavaScript 代码的 index.html,Detector.webgl 的值是 True。
这似乎是 pywebkitgtk 的问题,有人能帮忙吗?
1 个回答
1
请检查一下你使用的webkitgtk这个软件包是否是带有WebGL功能的(很可能没有)。运行时的设置并不意味着它会自动开启这个功能。