KinematicCollision3D
Eredita: RefCounted < Object
Contiene i dati di collisione provenienti dal movimento di un PhysicsBody3D.
Descrizione
Contiene i dati di collisione provenienti dal movimento di un PhysicsBody3D, solitamente da PhysicsBody3D.move_and_collide(). Quando un PhysicsBody3D viene spostato, si ferma se rileva una collisione con un altro corpo. Se è rilevata una collisione, è restituito un oggetto KinematicCollision3D.
I dati di collisione includono l'oggetto in collisione, il movimento rimanente e la posizione di collisione. Questi dati possono essere utilizzati per definire una reazione personalizzata alla collisione.
Metodi
get_angle(collision_index: int = 0, up_direction: Vector3 = Vector3(0, 1, 0)) const |
|
get_collider(collision_index: int = 0) const |
|
get_collider_id(collision_index: int = 0) const |
|
get_collider_rid(collision_index: int = 0) const |
|
get_collider_shape(collision_index: int = 0) const |
|
get_collider_shape_index(collision_index: int = 0) const |
|
get_collider_velocity(collision_index: int = 0) const |
|
get_collision_count() const |
|
get_depth() const |
|
get_local_shape(collision_index: int = 0) const |
|
get_normal(collision_index: int = 0) const |
|
get_position(collision_index: int = 0) const |
|
get_remainder() const |
|
get_travel() const |
Descrizioni dei metodi
float get_angle(collision_index: int = 0, up_direction: Vector3 = Vector3(0, 1, 0)) const 🔗
Restituisce l'angolo di collisione in base a up_direction, che è Vector3.UP per impostazione predefinita. Questo valore è sempre positivo.
Object get_collider(collision_index: int = 0) const 🔗
Restituisce l'Object associato al corpo in collisione, dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
int get_collider_id(collision_index: int = 0) const 🔗
Restituisce l'ID univoco di istanza dell'Object associato al corpo in collisione, dato un indice di collisione (per impostazione predefinita, la collisione più profonda). Vedi Object.get_instance_id().
RID get_collider_rid(collision_index: int = 0) const 🔗
Restituisce il RID del corpo in collisione utilizzato dal PhysicsServer3D dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
Object get_collider_shape(collision_index: int = 0) const 🔗
Restituisce la forma del corpo in collisione dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
int get_collider_shape_index(collision_index: int = 0) const 🔗
Restituisce l'indice della forma del corpo in collisione dato un indice di collisione (per impostazione predefinita, la collisione più profonda). Vedi CollisionObject3D.
Vector3 get_collider_velocity(collision_index: int = 0) const 🔗
Restituisce la velocità del corpo in collisione dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
int get_collision_count() const 🔗
Restituisce il numero di collisioni rilevate.
Restituisce la lunghezza della sovrapposizione del corpo in collisione lungo la normale di collisione.
Object get_local_shape(collision_index: int = 0) const 🔗
Restituisce la forma di collisione dell'oggetto in movimento dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
Vector3 get_normal(collision_index: int = 0) const 🔗
Restituisce la normale della forma del corpo in collisione nel punto di collisione, dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
Vector3 get_position(collision_index: int = 0) const 🔗
Restituisce il punto di collisione in coordinate globali dato un indice di collisione (per impostazione predefinita, la collisione più profonda).
Vector3 get_remainder() const 🔗
Restituisce il vettore di movimento rimanente dell'oggetto in movimento.
Restituisce lo spostamento effettuato dall'oggetto in movimento prima della collisione.