RigidBody

El componente RigidBody habilita el movimiento físico de una entidad, haciendo que se mueva bajo velocidad, aceleración y gravedad. Funciona junto con un colisionador en la misma entidad. Consulta Física para una visión general.

Tipos de cuerpo

TipoDescripción
RigidBodyType.DynamicAfectado por la gravedad y la velocidad, y movido por las colisiones con otros cuerpos. Para objetos que necesitan un comportamiento físico completo.
RigidBodyType.KinematicMovido por la velocidad aplicada, pero no afectado por la gravedad ni por las colisiones de otros cuerpos. Para plataformas móviles o movimiento programado.
RigidBodyType.StaticInmóvil. No afectado por la velocidad ni la gravedad. Para muros y geometría del nivel.

Opciones

OpciónTipoValor por defectoDescripción
typeRigidBodyTypeDynamicEl tipo de cuerpo.
velocityVector2(0, 0)Velocidad en píxeles por segundo. Para cuerpos Dynamic y Kinematic.
accelerationVector2(0, 0)Aceleración en píxeles por segundo al cuadrado. Para cuerpos Dynamic y Kinematic.
gravitynumber0Gravedad en píxeles por segundo al cuadrado. Solo para cuerpos Dynamic.

Ejemplo

import { Transform, BoxCollider, RigidBody, RigidBodyType } from "angry-pixel";

this.entityManager.createEntity([
    new Transform(),
    new BoxCollider({ width: 16, height: 16, layer: "Player" }),
    new RigidBody({ type: RigidBodyType.Dynamic, gravity: 1000 }),
]);