无法为加载的模型设置材料

时间:2014-04-13 14:45:23

标签: three.js webgl

您可以帮我找出材料不适用于网格的原因吗?

http://websaints.net/model/index2.html - 使用THREE.MeshNormalMaterial()材料加载模型 - ок。 http://websaints.net/model/index.html - 尝试加载纹理 - 不行。 我用makehuman.org创建模型,将模型保存为obj,然后在grunt-three-obj的帮助下将obj转换为json 我认为我做的一切都是正确的...但在某个地方我错了并且犯了错误:

Uncaught TypeError: Cannot set property 'needsUpdate' of undefined 

代码:

var angle = .05,
    scene = new THREE.Scene(),
    camera = new THREE.PerspectiveCamera(63, 4/3, 0.1, 1000),
    renderer = new THREE.WebGLRenderer({
      canvas: document.getElementById("screen"),
      antialias: true
    }),
    json_loader = new THREE.JSONLoader(),
    model = null

    json_loader.load('http://websaints.net/model/json/human.js', modelLoaded, 'http://websaints.net/model/json/');

    renderer.setSize(600, 400);
    camera.position.x = 0;
    camera.position.y = 0;
    camera.position.z = -10;

    function render() {
      if(model!=null){
        model.rotation.y+=.05;
      }
      requestAnimationFrame(render);
      renderer.render(scene, camera);
    }
    render();

    function modelLoaded(geometry, materials){
      model = new THREE.Mesh(geometry, new THREE.MeshNormalMaterial());
      model.position.z = 10;
      model.position.y = -8;
      scene.add(model);
      camera.lookAt({x:0,y:0,z:0});
    }

致以最诚挚的问候。安东。

0 个答案:

没有答案