love.load / love.update / love.draw Lifecycle
Penjelasan
LÖVE2D dibangun di atas pola callback: `love.load()` dipanggil sekali di awal untuk inisialisasi (memuat gambar, mengatur variabel awal), `love.update(dt)` dipanggil berulang setiap frame untuk memperbarui logic game, dan `love.draw()` dipanggil setelah update untuk menggambar tampilan berdasarkan state terkini. Engine yang mengatur kapan tiap fungsi ini dipanggil, bukan kamu yang membuat loop manual. Memisahkan update dan draw itu penting: `update` seharusnya tidak menggambar apa pun, dan `draw` seharusnya tidak mengubah state game — pemisahan ini membuat logic game predictable dan gampang di-debug, karena tahu persis di fungsi mana state berubah dan di fungsi mana state ditampilkan.
Contoh Konsep
local posisiX = 100
function love.load()
posisiX = 100
end
function love.update(dt)
-- logic: posisi bertambah tiap frame
posisiX = posisiX + 50 * dt
end
function love.draw()
-- tampilan: gambar kotak di posisi terkini
love.graphics.rectangle("fill", posisiX, 250, 50, 50)
end
Praktikum
Buat lingkaran yang bergerak turun secara konstan menggunakan love.update untuk mengubah posisi Y, dan love.draw untuk menggambarnya.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Jangan menggambar apa pun di dalam `love.update` — selalu pindahkan logic gambar ke `love.draw` supaya tampilan tetap sinkron dengan urutan render engine.