<?xml version="1.0" encoding="UTF-8" ?>
<class name="Joint3D" inherits="Node3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Base class for all 3D joints.
	</brief_description>
	<description>
		Joints are used to bind together two physics bodies. They have a solver priority and can define if the bodies of the two attached nodes should be able to collide with each other. See also [Generic6DOFJoint3D].
	</description>
	<tutorials>
		<link title="3D Truck Town Demo">https://godotengine.org/asset-library/asset/524</link>
	</tutorials>
	<members>
		<member name="collision/exclude_nodes" type="bool" setter="set_exclude_nodes_from_collision" getter="get_exclude_nodes_from_collision" default="true">
			If [code]true[/code], the two bodies of the nodes are not able to collide with each other.
		</member>
		<member name="nodes/node_a" type="NodePath" setter="set_node_a" getter="get_node_a" default="NodePath(&quot;&quot;)">
			The node attached to the first side (A) of the joint.
		</member>
		<member name="nodes/node_b" type="NodePath" setter="set_node_b" getter="get_node_b" default="NodePath(&quot;&quot;)">
			The node attached to the second side (B) of the joint.
		</member>
		<member name="solver/priority" type="int" setter="set_solver_priority" getter="get_solver_priority" default="1">
			The priority used to define which solver is executed first for multiple joints. The lower the value, the higher the priority.
		</member>
	</members>
</class>