Difference between revisions of "love.update (日本語)"
m |
m (transition updated) |
||
Line 1: | Line 1: | ||
− | + | ゲームにおいて、各フレームの状態更新時に用いるコールバック関数です。 | |
== 関数 == | == 関数 == | ||
Line 13: | Line 13: | ||
== 注意 == | == 注意 == | ||
− | + | love.update(dt) 関数において、引数 dt はローカル・スコープ(局所通用範囲)の変数です。よって、 | |
+ | この変数は love.update(dt) 関数に限り有効となります | ||
== 用例 == | == 用例 == | ||
Line 27: | Line 28: | ||
end | end | ||
</source> | </source> | ||
− | 一定の割合で変数 ''var'' を変更します (この用例では毎秒 | + | 一定の割合で変数 ''var'' を変更します (この用例では毎秒 ±3 です)。 |
<source lang="lua"> | <source lang="lua"> | ||
− | var = 10 -- | + | var = 10 -- 開始値 |
− | rate = 3 -- var | + | rate = 3 -- var の変更時における変動割合を指定します。 |
function love.update(dt) | function love.update(dt) | ||
if love.keyboard.isDown("down") then -- 値の減算 | if love.keyboard.isDown("down") then -- 値の減算 | ||
Line 45: | Line 46: | ||
* [[variable (日本語)]] | * [[variable (日本語)]] | ||
[[Category:Callbacks]] | [[Category:Callbacks]] | ||
− | {{#set:Description= | + | {{#set:Description=ゲームにおいて、各フレームの状態更新時に用いるコールバック関数です。}} |
{{#set:Subcategory=General}} | {{#set:Subcategory=General}} | ||
{{#set:Since=000}} | {{#set:Since=000}} | ||
== そのほかの言語 == | == そのほかの言語 == | ||
{{i18n (日本語)|love.update}} | {{i18n (日本語)|love.update}} |
Revision as of 20:55, 18 September 2019
ゲームにおいて、各フレームの状態更新時に用いるコールバック関数です。
関数
概要
love.update( dt )
引数
number dt
- 秒単位による最終更新からの時間。
返値
ありません。
注意
love.update(dt) 関数において、引数 dt はローカル・スコープ(局所通用範囲)の変数です。よって、 この変数は love.update(dt) 関数に限り有効となります
用例
テーブル npc にある関数 think を毎秒一回ずつ実行します。
dtotal = 0 -- これは経過時間を追跡して保持します。
function love.update(dt)
dtotal = dtotal + dt -- 恐らく 0.01 といった非常に小さな数値を、最後の更新からの経過時間として加算します。
if dtotal >= 1 then
dtotal = dtotal - 1 -- タイマーへの減算しますが、変更は破棄しません...毎秒当たりのフレームレートは 2/3 ですか?
npc.think()
end
end
一定の割合で変数 var を変更します (この用例では毎秒 ±3 です)。
var = 10 -- 開始値
rate = 3 -- var の変更時における変動割合を指定します。
function love.update(dt)
if love.keyboard.isDown("down") then -- 値の減算
var = var - (dt * rate)
end
if love.keyboard.isDown("up") then -- 値の加算
var = var + (dt * rate)
end
end
関連