Clara.io导出的对象在Three.JS画布中不可见 - 只有黑色方块

时间:2014-07-16 16:00:03

标签: javascript three.js

我正在使用Three.JS并导入了一个从clara.io导出为JSON的对象。我的问题是该对象在画布中不可见,我得到的是一个黑色正方形,其大小与我在变量中设置的相同(400和300像素)。

这是我的代码:

    var WIDTH = 400,
      HEIGHT = 300;

    // set some camera attributes
    var VIEW_ANGLE = 45,
      ASPECT = WIDTH / HEIGHT,
      NEAR = 1,
      FAR = 100000;


    var $container = $('#wrapper');


    var renderer = new THREE.WebGLRenderer();
    renderer.setSize(window.innerWidth, window.innerHeight);
    var camera =
      new THREE.PerspectiveCamera(
        VIEW_ANGLE,
        ASPECT,
        NEAR,
        FAR);

     scene = new THREE.Scene();
     scene.fog = new THREE.FogExp2(0xcccccc, 0.002);
     camera.position.z = 300;
    scene.add(camera);
    camera.z = 100;


    renderer.setSize(WIDTH, HEIGHT);

    $container.append(renderer.domElement);

    var ambientLight = new THREE.AmbientLight(0x111111);
    scene.add(ambientLight);


    var loader = new THREE.ObjectLoader();
    loader.load("js/suzanne-blender.json", function (obj) {

        scene.add(obj)
    });

    renderer.render(scene, camera);

我希望看到的是带有材料的模型,因为我是从clari.io导出的。感谢。

Here's a link to the object JSON file

1 个答案:

答案 0 :(得分:1)

我刚刚尝试将JSON加载到ThreeJS编辑器中:http://threejs.org/editor/(只需拖放它。)然后我添加了一盏灯并将灯光拖到中心位置。我可以在编辑器中看到Suzanne模型很好。这意味着问题必须出在您用于可视化模型的代码中。也许你只需要在一侧添加一个点光源来正确照亮物体?

致以最诚挚的问候,

本休斯顿