Three.jsを使用しているうちにUncaught TypeError: undefined is not a function
を取得しています。 THREE.PerspectiveCamera
を作成している行にエラーが表示されています。 スクリプトがあるThree.js - Uncaught TypeError:未定義は関数ではありません
window.requestAnimFrame = (function(callback){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(callback){
window.setTimeout(callback, 1000/60);
};
})();
function animate(lastTime, angularSpeed, three){
// update
var date = new Date();
var time = date.getTime();
lastTime = time;
// render
three.renderer.render(three.scene, three.camera);
// request new frame
requestAnimFrame(function(){
animate(lastTime, angularSpeed, three);
});
}
$(window).bind('load',function(){
var angularSpeed = 0.2; // revolutions per second
var lastTime = 0;
$container = $("#container");
var renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
$container.append(renderer.domElement);
// camera - Uncaught Type Error on the below line
var camera = new THREE.PerspectiveCamera(45, window.innerWidth/window.innerHeight, 1, 1000);
camera.position.y = -450;
camera.position.z = 400;
camera.rotation.x = 45 * (Math.PI/180);
// scene
var scene = new THREE.Scene();
var material = new THREE.LineBasicMaterial({
color: 0x0000ff,
});
var geometry = new THREE.Geometry();
for(var i=0;i<100;i++){
geometry.vertices.push(new THREE.Vector3(i-100,i-100,i-100));
geometry.vertices.push(new THREE.Vector3(i+100,i+100,i+100));
var line = new Three.Line(geometry,material);
scene.add(line);
geometry=new THREE.Geometry();
}
// create wrapper object that contains three.js objects
var three = {
renderer: renderer,
camera: camera,
scene: scene,
};
animate(lastTime, angularSpeed, three);
});
は、これは私がカメラを宣言しています方法が間違っているためですか? 私はthree.jsのドキュメントをチェックしましたが、基本的に同じ例があります。 私は何をすべきかについていません。
更新日: 最後のエラーが発生したとき、私はThree.jsのローカルコピーを使用していました。私はリンクhttp://www.html5canvastutorials.com/libraries/Three.jsでそれを切り替えました。 PerspectiveCameraエラーはなくなりましたが、Three.jsスクリプト内に新しいエラーが生成されます。エラーはThree.jsスクリプトの337行目のUncaught TypeError: Cannot read property 'x' of undefined
です
ありがとうございました。
こんにちは、あなたがこの '新しいTHREE.PerspectiveCamera(45、window.innerWidth/window.innerHeight、1、1000)を入力しようとすることができます;'直接コンソールにとあなたを更新出力とポスト? –
@LimH。これは同じエラーを返します。 "UncaughtTypeError:undefined is not function"。ブラウザがパースペクティブカメラをサポートしていないためですか? – rahules
私は、「ソフトウェアレンダリングのオーバーライド」オプションを有効にしてChromiumでスクリプトを試してきました。私はfirefoxで試してみたところ、 "TypeError:THREE.PerspectiveCameraはコンストラクタではありません"と表示されます。 – rahules