Font size
WorksheetsBank Soal MPP - XI RPL
Total questions: 80
Worksheet time: 50mins
Pasangkan metode Canvas dengan fungsinya:
fillRect()
Menggambar persegi penuh warna
clearRect()
Menghapus area tertentu
beginPath()
Memulai path baru
arc()
Menggambar lingkaran
drawImage()
Menampilkan gambar
Pasangkan event dengan penggunaannya dalam game:
keydown
Mengontrol karakter dengan keyboard
keyup
Berhenti bergerak ketika tombol dilepas
click
Memilih menu atau tombol dalam game
mousemove
Menggerakkan kursor di dalam canvas
touchstart
Kontrol game di perangkat mobile
Pasangkan istilah dengan deskripsinya:
HUD
Panel informasi skor dan nyawa
Sprite sheet
Koleksi frame animasi dalam 1 gambar
Collision detection
Logika mendeteksi tabrakan objek
requestAnimationFrame
Update animasi sesuai refresh rate
Game loop
Gambar ulang objek setiap frame
Pasangkan masalah dengan solusinya:
FPS drop
Optimisasi sprite sheet & kurangi objek
Gambar tidak muncul
Pastikan src gambar sudah dimuat
Collision tidak akurat
Gunakan bounding box sederhana
Tombol tidak berfungsi
Tambahkan event listener yang tepat
Audio tidak berjalan di browser
User interaction sebelum play audio
Pasangkan fungsi dengan komponen game nya:
Karakter utama yang dikontrol pemain
Player object
Memberikan tantangan kepada pemain
Enemy object
Menampilkan skor akhir dan progress
Score system
Menggambar suasana permainan
Background image
Memulai permainan baru
Restart button
Jodohkan kode Canvas berikut dengan fungsinya:
ctx.fillRect(x, y, width, height)
Menggambar persegi terisi
ctx.stroke()
Menggambar garis
canvas.getContext('2d')
Mendapatkan context 2D
ctx.fillStyle = 'red'
Mengatur warna fill
ctx.clearRect(0, 0, canvas.width, canvas.height)
Membersihkan Canvas
Jodohkan method Canvas berikut dengan fungsinya:
requestAnimationFrame()
Membuat animasi smooth
ctx.drawImage()
Menggambar gambar ke Canvas
ctx.save()
Menyimpan state Canvas
ctx.arc()
Menggambar lingkaran atau busur
ctx.translate()
Menggeser origin koordinat
Jodohkan, penggunaan handler dengan event yang tepat dalam game
Menggerakkan crosshair/cursor
mousemove
Memulai game setelah assets loaded
load
Memulai pergerakan player
keydown
Menghentikan pergerakan player
keyup
Menembak/serangan player
click
Jodohkan tipe asset berikut dengan cara implementasinya
Menggunakan sprite sheet dengan frame calculation
Sprite animation
Audio object dengan loop = true
Background music
drawImage() pada posisi UI yang fixed
UI button image
drawImage() pada posisi (0,0) dengan ukuran canvas
Background image
Audio objet dengan play() pada event tertentu
Sound effect
Jodohkan konsep game development berikut dengan tools/method yang tepat!
JavaScript objects/classes untuk state
Game state management
Performance API dan console.time()
Performance monitoring
Preloader dan asset caching
Asset management
Console.log() dan visual indicators
Visual debugging
requestAnimationFrame() dan delta time
Frame rate optimization
