Difference between revisions of "dt (日本語)"

(Created page with "dt は delta-time (デルタ時間) の最も一般的な略記であり、最後に呼ばれてから経過した時間の合計を表現するために、通常は love.up...")
 
m (dt の単位がわかりづらいので予定外の更新。)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
dt は delta-time (デルタ時間) の最も一般的な略記であり、最後に呼ばれてから経過した時間の合計を表現するために、通常は [[love.update (日本語)|love.update]] により判定が行われます。それは秒単位ですが、現代的な中央演算処理装置においては通常 1 未満 (一般的な値は 0.01 らしい) です。
+
dt は 2 フレーム/秒あたりの経過時間であり delta-time (デルタ時間、デルタタイム) の最も一般的な略称です。最後に呼ばれてから経過した時間の合計を表現するために、通常は [[love.update (日本語)|love.update]] により判定・処理を行います。それは秒単位であり、現代的な CPU (Central Processing Unit : 中央演算処理装置) の処理速度では 0.01 など 1 未満が通常の一般値です。 1 dt は 1 fps であり、 1 fps は 1 dt といったように互いに対応するものです。
  
 
== 用例 ==
 
== 用例 ==
Line 28: Line 28:
 
* [[love.update (日本語)]]  
 
* [[love.update (日本語)]]  
 
* [[love.timer.getDelta (日本語)]]
 
* [[love.timer.getDelta (日本語)]]
 +
* [http://blogs.love2d.org/content/quick-snips-delta-time Quick Snips: Delta Time - LÖVE • Community Blogs]
 +
* [https://stackoverflow.com/questions/24895038/how-to-get-delta-time-to-work-on-love2d lua - How to get delta time to work on love2d - Stack Overflow]
 +
* [https://love2d.org/forums/viewtopic.php?f=4&t=83643 Different fps on different machines - LÖVE]
 +
* [http://asaichi256.blog.fc2.com/blog-entry-16.html あさいちのーと 【Unity】ぴーちゃんゲームを開発してみる6]
 +
* [http://hirkblog.relva.org/?p=40 Time.deltaTimeとは何か。 #Unity - Alternativeニッキ]
  
 
== そのほかの言語 ==
 
== そのほかの言語 ==
 
{{i18n|dt}}
 
{{i18n|dt}}

Latest revision as of 05:10, 8 June 2017

dt は 2 フレーム/秒あたりの経過時間であり delta-time (デルタ時間、デルタタイム) の最も一般的な略称です。最後に呼ばれてから経過した時間の合計を表現するために、通常は love.update により判定・処理を行います。それは秒単位であり、現代的な CPU (Central Processing Unit : 中央演算処理装置) の処理速度では 0.01 など 1 未満が通常の一般値です。 1 dt は 1 fps であり、 1 fps は 1 dt といったように互いに対応するものです。

用例

変数 x の値を毎秒 1 加算します。

x = 0
function love.update(dt)
   x = x + dt
end


キーを押し続けている間は固定速度で x の位置を変更します。

x = 0
speed = 32
function love.update(dt)
   if love.keyboard.isDown("right") then
      x = x + (speed * dt)  -- 右矢印キーを毎秒押し続けることにより x は 32 加算されます。
   elseif love.keyboard.isDown("left") then
      x = x - (speed * dt)
   end
end

関連

そのほかの言語