<?xml version="1.0" encoding="UTF-8" ?>
<class name="KinematicCollision" inherits="Reference" version="3.6" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Collision data for [KinematicBody] collisions.
	</brief_description>
	<description>
		Contains collision data for [KinematicBody] collisions. When a [KinematicBody] is moved using [method KinematicBody.move_and_collide], it stops if it detects a collision with another body. If a collision is detected, a KinematicCollision object is returned.
		This object contains information about the collision, including the colliding object, the remaining motion, and the collision position. This information can be used to calculate a collision response.
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="get_angle" qualifiers="const">
			<return type="float" />
			<argument index="0" name="up_direction" type="Vector3" default="Vector3( 0, 1, 0 )" />
			<description>
				The collision angle according to [code]up_direction[/code], which is [code]Vector3.UP[/code] by default. This value is always positive.
			</description>
		</method>
	</methods>
	<members>
		<member name="collider" type="Object" setter="" getter="get_collider">
			The colliding body.
		</member>
		<member name="collider_id" type="int" setter="" getter="get_collider_id" default="0">
			The colliding body's unique instance ID. See [method Object.get_instance_id].
		</member>
		<member name="collider_metadata" type="Variant" setter="" getter="get_collider_metadata">
			The colliding body's metadata. See [Object].
		</member>
		<member name="collider_rid" type="RID" setter="" getter="get_collider_rid">
			The colliding body's [RID] used by the [PhysicsServer].
		</member>
		<member name="collider_shape" type="Object" setter="" getter="get_collider_shape">
			The colliding body's shape.
		</member>
		<member name="collider_shape_index" type="int" setter="" getter="get_collider_shape_index" default="0">
			The colliding shape's index. See [CollisionObject].
		</member>
		<member name="collider_velocity" type="Vector3" setter="" getter="get_collider_velocity" default="Vector3( 0, 0, 0 )">
			The colliding object's velocity.
		</member>
		<member name="local_shape" type="Object" setter="" getter="get_local_shape">
			The moving object's colliding shape.
		</member>
		<member name="normal" type="Vector3" setter="" getter="get_normal" default="Vector3( 0, 0, 0 )">
			The colliding body's shape's normal at the point of collision.
		</member>
		<member name="position" type="Vector3" setter="" getter="get_position" default="Vector3( 0, 0, 0 )">
			The point of collision, in global coordinates.
		</member>
		<member name="remainder" type="Vector3" setter="" getter="get_remainder" default="Vector3( 0, 0, 0 )">
			The moving object's remaining movement vector.
		</member>
		<member name="travel" type="Vector3" setter="" getter="get_travel" default="Vector3( 0, 0, 0 )">
			The distance the moving object traveled before collision.
		</member>
	</members>
	<constants>
	</constants>
</class>
