ここから本文です

javaScript超初心者です。Three.jsで3Dをやろうと思ったのですが、下のz -= v;の所...

ram********さん

2018/10/1901:45:57

javaScript超初心者です。Three.jsで3Dをやろうと思ったのですが、下のz -= v;の所でなぜかNaNになって理由が分からずハマってしまいました。
分かる方アドバイスお願いします。

window.addEventListener("load", function() {

…(省略)…

// アニメーション
var z = 0;
function SimulateStep(td)
{
if (z < -100) z = 100;
var v = td / 30;
z -= 1.1; // 正常に動作する
// z -= v; // NaNになる?
document.getElementById("debug").value = v; // 1.1111…と正しく表示される
box2.position.set(0, 0, z);
}

// レンダリング関数
var tms = null;
var tmo
function threeRender(tmn) {
if (!tms) {
tms = tmn;
tmo = tmn;
}
SimulateStep(tmn - tmo);
tmo = tmn;
document.getElementById("tmd").value = tmn - tms;

renderer.render(scene, camera);
controls.update();
window.requestAnimationFrame(threeRender);
}
threeRender();

}, false);

</script>
</head>

<body>
経過時間:<input type="text" id="tmd" maxlength="7" size="7pt" />[ミリ秒]
デバッグ:<input type="text" id="debug" maxlength="7" size="7pt" />
</body>
</html>

閲覧数:
24
回答数:
1
お礼:
25枚

違反報告

ベストアンサーに選ばれた回答

kei********さん

2018/10/1922:26:04

threeRender(); の行で関数に実引数が渡されていませんが、そこは大丈夫ですか?

  • 質問者

    ram********さん

    2018/10/2009:52:55

    回答ありがとうございます。
    requestAnimationFrameからコールバックされますので問題ないように思いますが、一応tmnには値が入ってるのは確かめてあります。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2018/10/20 10:22:38

構文的には問題なさそうなので、もう少し自分で探ってみます。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる