2011-11-09 13 views
5

作業three.jsでFirstPersonControlsを取得できません:は、私は、このしようとしている

コントロール=新しいTHREE.FirstPersonControls(カメラを)。

controls.movementSpeed = 1000; controls.lookSpeed = 0.125; controls.lookVertical = true; hereから

それは動作しませんでした

、 私は時間デルタとコントロールを更新する必要があることが分かった:)

するvarクロック=新しいTHREE.Clock(;

controls.update(clock.getDelta());

が、私はTHREE.Clock()

ためundefined is not a functionエラーを取得し、あなたはFirstPersonControlsとデモ/チュートリアルを作業に私を指す、またはちょうどいただきました間違った教えてくださいできますか?

ありがとうございます!

答えて

4

controls.update();(デルタを過ぎています)を呼び出してみましたか?

私は、クラスをmisc_sound.htmlの例のコードを少しコピーしてみました。 だから、init()メソッドで:

controls = new THREE.FirstPersonControls(camera); 

       controls.movementSpeed = 70; 
       controls.lookSpeed = 0.05; 
       controls.noFly = true; 
       controls.lookVertical = false; 

とレンダリングで():

controls.update(); 

更新

トッドは、新しいバージョンでは、指摘するように、デルタ時間の引数があることが必要提供:

controls.update(delta); 
+0

ちょっとうまくいった!ありがとう!同じような問題の投稿で混乱してしまった。 –

+2

私のように盲目的にコピー/貼り付けを始めたのであれば、[Todd Morrisonの答え](http://stackoverflow.com/a/11286753/1888983)をご覧ください:Pコールに 'controls.update(delta);が必要です。 – jozxyqk

関連する問題