← Extensiones del motor JumPHP
Collision v0.5.12
jumphp/collision · MIT · 0 descargas
Shapes (circle, box, convex polygon), the separating axis test with the minimum translation, rays and a spatial hash broad phase.
Funciona con JumPHP ^0.5
Qué aporta
- Circle, Box, convex Polygon (regular(), rotated())
- Collision::test() gives the normal and the depth: how to push apart
- Collision::raycast(): the first shape a ray meets, with its normal
- SpatialHash broad phase and a CollisionWorld service: collisions(), at(), overlapping(), raycast()
- Pure PHP on floats: the same in the browser
Añadirla a tu juego
bin/jumphp extension:add <game> jumphp/collision
O con Composer:
bin/jumphp composer <game> require jumphp/collision Servicios: JumPHP\Collision\CollisionWorld
Ejemplo
$hit = Collision::test($player, $wall);if ($hit) { [$dx, $dy] = $hit->pushOutOfFirst(); $player->translate($dx, $dy); }
Collision
Collisions for JumPHP games (jumphp/collision): circles, boxes and convex polygons, overlap tests with the way out, rays, a broad phase.
Documentation: doc/index.md; sample: samples/ (bin/jumphp extension:add <game> jumphp/collision copies both into your game).
Example game: games/collision-demo.
Reseñas de esta extensión
Iniciar sesión con GitHub Inicia sesión con GitHub para valorar esta extensión.
Aún no hay reseñas: sé el primero.