Class KinematicCollision2D
- Namespace
- Godot
- Assembly
- GodotSharp.dll
Holds collision data from the movement of a PhysicsBody2D, usually from MoveAndCollide(Vector2, bool, float, bool). When a PhysicsBody2D is moved, it stops if it detects a collision with another body. If a collision is detected, a KinematicCollision2D 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.
public class KinematicCollision2D : RefCounted, IDisposable
- Inheritance
-
KinematicCollision2D
- Implements
- Inherited Members
Constructors
KinematicCollision2D()
public KinematicCollision2D()
Methods
GetAngle(Vector2?)
Returns the collision angle according to upDirection
, which is Vector2.UP
by default. This value is always positive.
public float GetAngle(Vector2? upDirection = null)
Parameters
upDirection
Vector2?If the parameter is null, then the default value is
new Vector2(0, -1)
.
Returns
GetCollider()
Returns the colliding body's attached GodotObject.
public GodotObject GetCollider()
Returns
GetColliderId()
Returns the unique instance ID of the colliding body's attached GodotObject. See GetInstanceId().
public ulong GetColliderId()
Returns
GetColliderRid()
Returns the colliding body's Rid used by the PhysicsServer2D.
public Rid GetColliderRid()
Returns
GetColliderShape()
Returns the colliding body's shape.
public GodotObject GetColliderShape()
Returns
GetColliderShapeIndex()
Returns the colliding body's shape index. See CollisionObject2D.
public int GetColliderShapeIndex()
Returns
GetColliderVelocity()
Returns the colliding body's velocity.
public Vector2 GetColliderVelocity()
Returns
GetDepth()
Returns the colliding body's length of overlap along the collision normal.
public float GetDepth()
Returns
GetLocalShape()
Returns the moving object's colliding shape.
public GodotObject GetLocalShape()
Returns
GetNormal()
Returns the colliding body's shape's normal at the point of collision.
public Vector2 GetNormal()
Returns
GetPosition()
Returns the point of collision in global coordinates.
public Vector2 GetPosition()
Returns
GetRemainder()
Returns the moving object's remaining movement vector.
public Vector2 GetRemainder()
Returns
GetTravel()
Returns the moving object's travel before collision.
public Vector2 GetTravel()
Returns
HasGodotClassMethod(in godot_string_name)
Check if the type contains a method with the given name. This method is used by Godot to check if a method exists before invoking it. Do not call or override this method.
protected override bool HasGodotClassMethod(in godot_string_name method)
Parameters
method
godot_string_nameName of the method to check for.
Returns
HasGodotClassSignal(in godot_string_name)
Check if the type contains a signal with the given name. This method is used by Godot to check if a signal exists before raising it. Do not call or override this method.
protected override bool HasGodotClassSignal(in godot_string_name signal)
Parameters
signal
godot_string_nameName of the signal to check for.
Returns
InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)
Invokes the method with the given name, using the given arguments. This method is used by Godot to invoke methods from the engine side. Do not call or override this method.
protected override bool InvokeGodotClassMethod(in godot_string_name method, NativeVariantPtrArgs args, out godot_variant ret)
Parameters
method
godot_string_nameName of the method to invoke.
args
NativeVariantPtrArgsArguments to use with the invoked method.
ret
godot_variantValue returned by the invoked method.