我已经创建了此代码,该代码使用three.js库和webgl旋转了带有轨迹球的多维数据集。它在chrome和firefox中工作完美,但需要它在Internet Explorer 10上工作,我下载了IeWebgl,据说它可以在IE10上工作,但是它什么也没做,只是说webgl没有被互联网支持,他们的网站上有一些说明,但是我确实不了解他们。这是我的代码。
最佳答案
可以制作ie + ieWebGL兼容的场景。
为此,您可以从demos' sources on ieWebGL site开始。
场景必须由另一种结构构建(某些三.js脚本必须由require.js加载)。
这似乎工作:
<script src="http://iewebgl.com/scripts/webglhelper.js" type="text/javascript"></script>
<script src="path/require.js"></script>
<script src="other_three.js-scripts"></script>
<script>
// stub for "console" object, because IE does not have it, when page is not under debugger.
var console = console || {
'warn': function (msg) { },
'log': function (msg) { },
'error': function (msg) { }
};
var container, camera, controls, scene, renderer;
function start()
{
require
(
["path/build/three.min.js", "path/examples/js/controls/your_controls.js"],
function ()
{
init();
animate();
}
);
}
function init()
{
container = document.getElementById('renderCanvas');
// renderer
renderer = new THREE.WebGLRenderer({ 'canvas': container });
renderer.setSize(window.innerWidth, window.innerHeight);
scene = new THREE.Scene();
...
}
...
</script>
<!-- create proper element (native canvas element or IEWebGL plugin object element) depending on web browser and WebGL support -->
<script id="WebGLCanvasCreationScript"type="text/javascript">WebGLHelper.CreateGLCanvasInline('renderCanvas', start)</script>