KinematicCollision3D

Hereda: RefCounted < Object

Contiene datos de colisión del movimiento de un PhysicsBody3D.

Descripción

Holds collision data from the movement of a PhysicsBody3D, usually from PhysicsBody3D.move_and_collide(). When a PhysicsBody3D is moved, it stops if it detects a collision with another body. If a collision is detected, a KinematicCollision3D object is returned.

The collision data includes the colliding object, the remaining motion, and the collision position. This data can be used to determine a custom response to the collision.

Métodos

float

get_angle(collision_index: int = 0, up_direction: Vector3 = Vector3(0, 1, 0)) const

Object

get_collider(collision_index: int = 0) const

int

get_collider_id(collision_index: int = 0) const

RID

get_collider_rid(collision_index: int = 0) const

Object

get_collider_shape(collision_index: int = 0) const

int

get_collider_shape_index(collision_index: int = 0) const

Vector3

get_collider_velocity(collision_index: int = 0) const

int

get_collision_count() const

float

get_depth() const

Object

get_local_shape(collision_index: int = 0) const

Vector3

get_normal(collision_index: int = 0) const

Vector3

get_position(collision_index: int = 0) const

Vector3

get_remainder() const

Vector3

get_travel() const


Descripciones de Métodos

float get_angle(collision_index: int = 0, up_direction: Vector3 = Vector3(0, 1, 0)) const 🔗

Devuelve el ángulo de colisión según up_direction, que es Vector3.UP de forma predeterminada. Este valor es siempre positivo.


Object get_collider(collision_index: int = 0) const 🔗

Devuelve el Object adjunto al cuerpo que colisiona, dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


int get_collider_id(collision_index: int = 0) const 🔗

Devuelve el ID de instancia único del Object adjunto al cuerpo que colisiona, dado un índice de colisión (el de la colisión más profunda de forma predeterminada). Véase Object.get_instance_id().


RID get_collider_rid(collision_index: int = 0) const 🔗

Devuelve el RID del cuerpo que colisiona utilizado por el PhysicsServer3D dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


Object get_collider_shape(collision_index: int = 0) const 🔗

Devuelve la forma del cuerpo que colisiona dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


int get_collider_shape_index(collision_index: int = 0) const 🔗

Devuelve el índice de la forma del cuerpo que colisiona dado un índice de colisión (el de la colisión más profunda de forma predeterminada). Véase CollisionObject3D.


Vector3 get_collider_velocity(collision_index: int = 0) const 🔗

Devuelve la velocidad del cuerpo que colisiona dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


int get_collision_count() const 🔗

Devuelve el número de colisiones detectadas.


float get_depth() const 🔗

Devuelve la longitud de superposición del cuerpo que colisiona a lo largo de la normal de colisión.


Object get_local_shape(collision_index: int = 0) const 🔗

Devuelve la forma de colisión del objeto en movimiento dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


Vector3 get_normal(collision_index: int = 0) const 🔗

Devuelve la normal de la forma del cuerpo que colisiona en el punto de colisión dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


Vector3 get_position(collision_index: int = 0) const 🔗

Devuelve el punto de colisión en coordenadas globales dado un índice de colisión (el de la colisión más profunda de forma predeterminada).


Vector3 get_remainder() const 🔗

Devuelve el vector de movimiento restante del objeto en movimiento.


Vector3 get_travel() const 🔗

Devuelve la distancia que el objeto en movimiento recorrió antes de la colisión.