LIBGDXのデルタ時間とは何ですか?私はそれに関する多くの記事を読んだ。私の知る限りでは、デルタ時間は、前と現フレームとの間の時間ギャップ LIBGDXのデルタ時間とは
- あります
我々は60 * DTを言うなら、それは関係なく、(例えば)モバイルの速度が何であるかを、毎秒60個のフレームを移動しないだろう、我々はDT
を使用するゲームのために速度を一定にします。
これは私がデルタ時間について知っていることですが、デルタ時間を渡している更新メソッドまたはレンダリングメソッドのためであるが、私たちが計算を指定しているコードPER SECONDのために?例えば
、
public void update(float dt)
{
float distance +=2*dt;
}
このコードは、毎秒2つのフレームを移動させるのだろうか?もしそうなら、以下のコードは何をしますか?
public void update(float dt)
{
....
}
public void render(float delta)
{
update(delta);
}
ので、私は答えを必要とする、上記のコードが暗示されているもの
- ?
- 実際にコードの背後には何が起こっていますか?
- なぜそうしていますか?
このコードでは、上記の例のように毎秒xフレームを移動する必要があります。
デルタタイムを更新メソッドに渡しているレンダリングメソッドがわかりましたが、私はそれについて明確なビューが必要です。申し訳ありませんが、質問が愚かなようだが実際に何が起こっているか知っていなくても進んでいくのは本当に難しいです。
ありがとうございます。この時間差(デルタタイム)を更新メソッドに渡す理由を教えてください。なぜそれは有用ですか?私は最初の例の説明を理解しましたが、2番目の例ではなぜそうしていますか?メソッドを更新するためにデルタタイムを渡すときに何を明らかにしようとしていますか?どのように役に立つのですか?@Xoppa – Anusha
更新メソッドにデルタタイムの引数があるのはなぜですか?これはあなたが作成したメソッドです。libGDXの一部ではありません。あなたはそうする必要はありません。しかし、通常は、あなたのゲームの更新をそれをレンダリングから切り離したいと思っています(私の最後のリンクを見てください)。ゲームを更新するには、車をその新しい位置に設定して、移動した距離を知るためにはデルタ時間が必要です。読みやすく、保守しやすいので便利です。更新メソッドの内容をレンダリングメソッドに安全に移動できます。最後のリンクとは別に、あなたはOOPを読みたいかもしれません。 – Xoppa