如何在three.js导入完整的json模型

时间:2016-06-23 06:23:52

标签: json three.js

我是three.js的新手。 我们正在做一个项目,我在将JSON模型加载到索引文件时遇到了麻烦。

这就是我需要的。 这是我的JSON模型代码

<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>
        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 );
        renderer.setClearColor( 0x000000, 0 ); // the default
        document.body.appendChild( renderer.domElement );

        camera.position.z = 5;

        var render = function (){ 
            renderer.render(scene, camera);
        };

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

这是我的JSON模型         https://www.dropbox.com/s/ybztwwah9ncp68p/scene.json?dl=0 我出口了好几次。所以我很确定JSON模型没有问题。

但是我在使用THREE.ObjectLoader加载这个JSON模型时遇到了问题。 它不起作用。 这是我用来导入JSON模型的代码函数。

    var loader = new THREE.ObjectLoader();
        Loader.load("scene.json",function(obj){
            scene.add(obj);
        });

如何纠正?我多次尝试过。 任何帮助表示赞赏。 感谢。

1 个答案:

答案 0 :(得分:0)

var loader = new THREE.JSONLoader();
    loader.load( 'scene.json', function (o) {

        scene.add(o);

    }); 

*请参阅loader.load

处的小“l”

工作示例:http://threejs.org/examples/webgl_loader_json_claraio.html

如果你想使用Object Loader,你必须解析你的json: http://threejs.org/docs/api/loaders/ObjectLoader.html