1

three.js ライブラリと webgl を使用して、トラックボールでキューブを回転させるこのコードを作成しました。それはchromeとfirefoxで完璧に動作しますが、Internet Explorer 10で動作する必要があります.IE10で動作するのに役立つと思われるIeWebglをダウンロードしましたが、何もしません.webglはインターネットでサポートされていません.それらを理解していません。ここに私のコードがあります..

4

1 に答える 1

1

ie+ieWebGL 互換のシーンを作ることができます。

これを行うには、ieWebGL サイトのデモのソースから開始できます。シーンは別の構造で構築する必要があります (一部の three.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>
于 2013-05-18T14:55:25.160 に答える