【问题标题】:three.js OrbitControls are not working, controls undefined三.js OrbitControls 不工作,控件未定义
【发布时间】:2020-01-23 21:22:40
【问题描述】:

I followed this quick tutorial from YouTube

当我注释掉这一行时,我得到了没有控件的工作示例。

//controls = new THREE.OrbitControls( camera, renderer.domElement );

但是当我尝试使用 OrbitControls 时,日志会告诉我以下信息:

(index):21 Uncaught ReferenceError: controls is not defined
    at (index):21

我index.html的内容:

<html>
    <head>
        <title>My first three.js app</title>
        <style>
            body { margin: 0; }
            canvas { width: 100%; height: 100% }
        </style>
    </head>
    <body>
        <script src="js/three.js"></script>
        <script src="js/OrbitControls.js"></script>
        <script type="module">

            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.innerWidth, window.innerHeight );
            document.body.appendChild( renderer.domElement );

            controls = new THREE.OrbitControls( camera, renderer.domElement );

            var geometry = new THREE.SphereGeometry( 1, 64, 64 );
            var material = new THREE.MeshBasicMaterial( {color: 0x00ff00 } );
            var sphere = new THREE.Mesh( geometry, material );
            scene.add( sphere );

            camera.position.z = 5;

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

                renderer.render( scene, camera );
            };

            animate();
        </script>
    </body>
</html>

【问题讨论】:

    标签: html three.js


    【解决方案1】:

    你必须像这样创建你的控件:

    var controls = new THREE.OrbitControls( camera, renderer.domElement );
    

    缺少var 导致上述运行时错误。

    【讨论】:

    • 我从脚本标签中删除了模块类型,然后它就可以工作了。无论如何,感谢您的输入
    猜你喜欢
    • 2016-09-06
    • 2021-04-25
    • 1970-01-01
    • 2013-10-26
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多