从Threejs.org复制/粘贴JsonLoader无法正常工作

时间:2016-03-20 20:21:38

标签: javascript json three.js loader 3dsmax

所以我试图让一个JSONLoader从threejs.org

开始工作

Three.js肯定是有效的,因为我创建一个多维数据集没有问题。但是当我尝试通过JSONLoader加载一个js文件时,没有任何反应。

<html>
    <head>
        <title>My first Three.js app</title>
        <style>
            body { margin: 0; }
            canvas { width: 100%; height: 100% }
        </style>
    </head>
    <body>
        <script src="three.js"></script>
        <script>
            var scene = new THREE.Scene();
            var camera = new THREE.PerspectiveCamera( 75, window.innerWidth/window.innerHeight, 0.1, 1000 );

            var renderer = new THREE.WebGLRenderer( { alpha: true } );
            renderer.setSize( window.innerWidth, window.innerHeight );
            document.body.appendChild( renderer.domElement );

            // instantiate a loader
            var loader = new THREE.JSONLoader();

            // load a resource
            loader.load(
                // resource URL
                'logo.js',
                // Function when resource is loaded
                function ( geometry, materials ) {
                    var material = new THREE.MultiMaterial( materials );
                    var object = new THREE.Mesh( geometry, material );
                    scene.add( object );
                }
            );

            camera.position.z = 5;

            var render = function () {
                renderer.setClearColor( 0x000000, 0 );
                requestAnimationFrame( render );
                renderer.render(scene, camera);
            };

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

如标题中所述,代码是从三个自己的网站上复制粘贴的,应该可以正常工作。

有人能帮我弄清楚出了什么问题吗?

这里是logo.js https://jsfiddle.net/380z6096/

脚本的小提琴

使用3ds Max JSExporter

从3ds max导出对象

我正在使用xampp和chrome。

1 个答案:

答案 0 :(得分:0)

您的相机位于您的几何体内。

您可以像这样确定几何体的尺寸

geometry.computeBoundingSphere();
console.log( geometry.boundingSphere );

geometry.computeBoundingBox();
console.log( geometry.boundingBox );

缩放几何体

object.scale.multiplyScalar( 0.01 );

或者移回相机。

three.js r.75