回転している単純なキューブをレンダリングしようとしています。すべてのマシンで同じ回転速度を得るには、各フレーム間のタイムスパンを計算し、この回転値を回転で使用します。経過時間を計算するとThree.jsがレンダリングされない
var elapsed = (timestamp - lastFrameTimestamp)/1000.0; // doesn't show the cube
しかし、私は何も表示されません。この値を使用していたとき: は、基本的にはそれだけです。また、コンソールにエラーや警告も表示されません。経過値をコンソールに出力すると正しい数値が返されます。
私は固定値との違いを設定しようとしましたが、これはうまく動作しますか?
var elapsed = 16.665487/1000.0;
私はこのような場合のためにjsFiddleを作成しました。私はChromeとFirefoxの両方で同じ結果を試しました。
誰かが問題を引き起こしているアイデアやヒントを持っていますか?
THREE.clock.getDelta(
を呼び出すことによって、アニメーションのループをトリガーする必要があります。しかし、私のアプローチがうまくいかない理由はまだ分かっています – Auskennfuchs
'console.log(cube.rotation.x + = 0.1 * elapsed)'出力NaN – 2pha
最初のアニメーションコールの引数としてDate.now()を渡す必要があります。 – micnil