<?xml version="1.0" encoding="UTF-8" ?>
<class name="SeparationRayShape3D" inherits="Shape3D" api_type="core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		A 3D ray shape used for physics collision that tries to separate itself from any collider.
	</brief_description>
	<description>
		A 3D ray shape, intended for use in physics. Usually used to provide a shape for a [CollisionShape3D]. When a [SeparationRayShape3D] collides with an object, it tries to separate itself from it by moving its endpoint to the collision point. For example, a [SeparationRayShape3D] next to a character can allow it to instantly move up when touching stairs.
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="length" type="float" setter="set_length" getter="get_length" default="1.0">
			The ray's length.
		</member>
		<member name="slide_on_slope" type="bool" setter="set_slide_on_slope" getter="get_slide_on_slope" default="false">
			If [code]false[/code] (default), the shape always separates and returns a normal along its own direction.
			If [code]true[/code], the shape can return the correct normal and separate in any direction, allowing sliding motion on slopes.
		</member>
	</members>
</class>
