// JavaScript · Canvas API · requestAnimationFrame
Napisz własną grę od zera. Canvas API, pętla animacji, grawitacja, kolizje — brzmi skomplikowanie, ale to dosłownie ~100 linii JS. Gra działa poniżej. Zmień parametry suwakami i obserwuj efekt na żywo.
Przesuń suwak — gra zmienia się natychmiast. Tak wygląda programowanie: modyfikujesz parametr, widzisz efekt. Spacja lub klik = skok. Możesz skakać dwa razy!
🎮 runner.js — edytowalny
0
wynik
0
rekord
❤❤❤
życia
Spacja / klik = skok (2x!) | suwaki działają w trakcie gry
Prędkość: 4
Grawitacja: 0.55
Skok: -13
anatomia gry
Jak to działa w środku
1
Canvas — płótno przeglądarki
Element <canvas> to biała kartka w HTML. Przez JS rysujesz na niej co chcesz — prostokąty, okręgi, tekst. ctx.fillRect(), ctx.arc() to Twoje pędzle.
2
requestAnimationFrame — pętla 60 FPS
Zamiast setInterval, przeglądarka sama wywołuje Twoją funkcję 60 razy na sekundę — zsynchronizowaną z odświeżaniem monitora. Płynna animacja bez marnowania CPU.
3
Grawitacja — fizyka w 2 liniach
player.vy += gravity — prędkość pionowa rośnie. player.y += player.vy — pozycja się zmienia. Zmiana wartości gravity na suwaków powyżej to właśnie ta zmienna.
4
Kolizja — algebra prostokątów
Cztery warunki if sprawdzają czy dwa prostokąty się nakładają. Dodajemy "padding" 7px — żeby nie karać gracza za piksel różnicy.
5
addEventListener — gra Cię słucha
keydown nasłuchuje klawiatury, touchstart — dotyku. Jedna funkcja, działa na PC i telefonie. Twoja gra jest multiplatformowa od pierwszej linii.