Table of Contents

Class KinematicCollision3D

Holds collision data from the movement of a PhysicsBody3D.

Inheritance
KinematicCollision3D

Remarks

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.

Methods

get_angle(int, Vector3)

Qualifiers: const

Returns the collision angle according to up_direction, which is UP by default. This value is always positive.

float get_angle(int collision_index, Vector3 up_direction)

Parameters

collision_index int
up_direction Vector3

get_collider(int)

Qualifiers: const

Returns the colliding body's attached Object given a collision index (the deepest collision by default).

Object get_collider(int collision_index)

Parameters

collision_index int

get_collider_id(int)

Qualifiers: const

Returns the unique instance ID of the colliding body's attached Object given a collision index (the deepest collision by default). See get_instance_id.

int get_collider_id(int collision_index)

Parameters

collision_index int

get_collider_rid(int)

Qualifiers: const

Returns the colliding body's RID used by the PhysicsServer3D given a collision index (the deepest collision by default).

RID get_collider_rid(int collision_index)

Parameters

collision_index int

get_collider_shape(int)

Qualifiers: const

Returns the colliding body's shape given a collision index (the deepest collision by default).

Object get_collider_shape(int collision_index)

Parameters

collision_index int

get_collider_shape_index(int)

Qualifiers: const

Returns the colliding body's shape index given a collision index (the deepest collision by default). See CollisionObject3D.

int get_collider_shape_index(int collision_index)

Parameters

collision_index int

get_collider_velocity(int)

Qualifiers: const

Returns the colliding body's velocity given a collision index (the deepest collision by default).

Vector3 get_collider_velocity(int collision_index)

Parameters

collision_index int

get_collision_count

Qualifiers: const

Returns the number of detected collisions.

int get_collision_count

get_depth

Qualifiers: const

Returns the colliding body's length of overlap along the collision normal.

float get_depth

get_local_shape(int)

Qualifiers: const

Returns the moving object's colliding shape given a collision index (the deepest collision by default).

Object get_local_shape(int collision_index)

Parameters

collision_index int

get_normal(int)

Qualifiers: const

Returns the colliding body's shape's normal at the point of collision given a collision index (the deepest collision by default).

Vector3 get_normal(int collision_index)

Parameters

collision_index int

get_position(int)

Qualifiers: const

Returns the point of collision in global coordinates given a collision index (the deepest collision by default).

Vector3 get_position(int collision_index)

Parameters

collision_index int

get_remainder

Qualifiers: const

Returns the moving object's remaining movement vector.

Vector3 get_remainder

get_travel

Qualifiers: const

Returns the moving object's travel before collision.

Vector3 get_travel