三。场景不是一个功能

时间:2015-11-16 17:43:16

标签: html three.js

我正在使用three.js,附带的代码返回以下错误

  

未捕获的TypeError:THREE.Scene不是函数

     

init @ new 1.html:18

在这一行

scene=new THREE.Scene();

导致这种情况的原因是什么,我该如何解决?

window.onload = init

var scene, camera, render;

function init() {
    container = document.createElement('div');
    document.body.appendChild(container);

    scene = new THREE.Scene();
    camera = new THREE.PerspectiveCamera(80, window.innerWidth / window.innerHeight, 0.1, 200); //перспективная проекция
    camera.position.y = 150;
    camera.position.z = 500;

    var line_geometry = new THREE.Geometry();
    line_geometry.vertices.push(new THREE.Vector3(0, 0, 0));
    line_geometry.vertices.push(new THREE.Verctor3(0, 40, 50));

    var line = new THREE.Line(line_geometry);

    scene.add(line);

    render = new THREE.WebGLRender(); //рендеринг
    render = setSize(window.innerWidth, window.innerHeight); //инициализация рендеринга

    container.appendChild(render.domElement); //??
    render.render(scene);

}

以下是错误的屏幕截图。

enter image description here

1 个答案:

答案 0 :(得分:1)

您的代码中有很多拼写错误:
Verctor3代替Vector3
WebGLRender代替WebGLRenderer
render.render(scene);代替render.render(scene, camera);
等等。
另外,您应该在开始时运行init()而不是window.onload=init
通常 - 请参阅Group页面。那里有很多工作的例子。