Three.JS JQuery插件不改变画布大小$(window).resize();

时间:2017-05-11 21:34:45

标签: javascript jquery three.js resize

        function ani() {
            if (Detector.webgl) {
                var scene = new THREE.Scene();
                var camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );

                var renderer = new THREE.WebGLRenderer();
                renderer.setSize( $(window).width() - 20, $(window).height() );
                document.body.appendChild( renderer.domElement );

                var geometry = new THREE.BoxGeometry( 1, 1, 1);
                var material = new THREE.MeshBasicMaterial( { color: 0xffffff } );
                var cube = new THREE.Mesh( geometry, material );
                scene.add( cube );

                camera.position.z = 5;

                var render = function() {
                    requestAnimationFrame( render );

                    cube.rotation.x += 0.01;
                    cube.rotation.y += 0.01;

                    renderer.render( scene, camera );
                }
                render();
            } else {
                    var warning = Detector.getWebGLErrorMessage();
                    document.getElementById('container').appendChild(warning);
            }
        };
        ani();
        $(window).resize(ani);

说明
在窗口调整大小时不调用函数ani来调整渲染器的大小。
我该如何解决这个问题?

提前谢谢!

0 个答案:

没有答案