我正在使用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);
}
以下是错误的屏幕截图。
答案 0 :(得分:1)
您的代码中有很多拼写错误:
Verctor3
代替Vector3
WebGLRender
代替WebGLRenderer
render.render(scene);
代替render.render(scene, camera);
等等。
另外,您应该在开始时运行init()
而不是window.onload=init
通常 - 请参阅Group
页面。那里有很多工作的例子。