← Erweiterungen der JumPHP-Engine
Physics v0.5.13
jumphp/physics · MIT · 11 Downloads
A small 2D physics engine for JumPHP: balls, rings and arcs (rotating, opening, growing, shrinking, with gaps), pegs, walls; gravity, restitution, collision events; fixed step, seeded, 32-bit safe
Funktioniert mit JumPHP ^0.5
Zu deinem Spiel hinzufügen
bin/jumphp extension:add <game> jumphp/physics
Oder mit Composer:
bin/jumphp composer <game> require jumphp/physics
Dienste: JumPHP\Physics2d\World
Schlüssel in project.yaml: physics
jumphp/physics
A small 2D physics engine for JumPHP (an engine extension, docs/extensions.md), made for "satisfying" videos and simple games: balls bouncing inside rings and arcs (turning, opening, growing, shrinking, with gaps), on pegs and walls, under gravity. Fixed step, seeded, the same run on the desktop and in the browser (32-bit PHP).
public function __construct(private World $world) {}
$this->world->reset(42);
$ring = $this->world->addRing(new Ring(135, 240, 120, gap: 0.6, spin: 1.2));
$this->world->addBall(new Ball(135, 200, vx: 140, radius: 7, color: '#ff4fa3'));
$this->world->on(fn (array $hit) => $hit['type'] === 'escape' && $this->win());
// update(): $this->world->update($dt); foreach ($this->world->hits() as $hit) { ... }
project.yaml physics: {gravity: 600, restitution: 1.0, hz: 240, seed: 1}. Example: games/shorts-demo.
Bewertungen dieser Erweiterung
Mit GitHub anmelden Melde dich mit GitHub an, um diese Erweiterung zu bewerten.
Noch keine Rezension: Sei der Erste.