TOP > プログラム関連 > Lua > LÖVE(Love2D) > LÖVE(Love2D)でシンプルなPVなどの動画を作成する > Love2Dの超基礎(load update draw)

LÖVE(Love2D)でシンプルなPVなどの動画を作成する
◆◆ Love2Dの超基礎(load update draw) ◆◆
とりあえず3つだけ覚えておく!  〜コールバック関数〜

敢えて「Hello World」とは言わないでおきます。もうちょっと実践的な話。 Love2Dで「実際に何か動くもの」を作ろうと思ったときに最低限必要になる「作法」だけ、ズバリ確認しておきます。

ファイル名:main.lua
function love.load()
    print ("love.load():実行直後に1度だけ呼ばれる")
end

function love.update(dt)
    print ("love.update():毎フレーム呼ばれる更新処理")
end

function love.draw()
    print ("love.draw():毎フレーム呼ばれる描画処理")
end
実行結果

main.lua という名前のファイルを作って、そこに書いておくとLove2D側から(自動的に)呼び出して実行してもらえる「コールバック関数」というものがあります。 その種類はガンジス川の砂粒の数ほどもありますので全部覚えようとしていたら命がいくつあっても足りなくなりますが、 代表的かつ最低限知っておけば足りるのが上記 load、update、draw の3つです。 これらの名前で main.lua の中に関数を書いておくと、Love2D側が適切なタイミングで実行してくれます。

load

実行開始時に一度だけ呼ばれます。 画像の読み込みなど、アプリケーションの動作に必要なデータの設定の処理などをここに書いておきます。

function love.load ()

    -- 中身は自分で書くのですよ

end

update

毎フレームの描画前に呼ばれます。描画に先立って毎フレーム実行しておく内部的な処理をここに書いておきます。 (例:画像表示の座標を動かすとか)

function love.update (dt)

    -- 中身は自分で書くのですよ

end

引数を書いておくと、前回のフレームからの経過時間が入ってきます。引数は省略可能です。

draw

毎フレームの描画時に呼ばれます。何を描画するかは自分で書いておきます。 (例:updateで動かした座標に画像を表示とか)

function love.draw ()

    -- 中身は自分で書くのですよ

end

詳しい理屈はさておき、この3つさえ知っていれば大体どうにでもなります。 逆にこれを知らないと、いくらお勉強をしても、 「……で、結局どうすれば実際に動くモノが作れるの???」と要領を得ないままになってしまうことでしょう。恐ろしいことです。

ともかくこれで「Love2Dで何か作れそうな感じ! わくわく!」という感じになった! なったでしょう? なったに違いない! で、何を作るんでしたっけ? そうだ、動画を作るんだ!

ではいよいよ次回から動画作成に必要な処理を作っていきますよ。わくわく!