diff options
Diffstat (limited to 'doc/classes/VehicleBody3D.xml')
-rw-r--r-- | doc/classes/VehicleBody3D.xml | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/doc/classes/VehicleBody3D.xml b/doc/classes/VehicleBody3D.xml new file mode 100644 index 0000000000..b8b85ff605 --- /dev/null +++ b/doc/classes/VehicleBody3D.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="VehicleBody3D" inherits="RigidBody3D" version="4.0"> + <brief_description> + Physics body that simulates the behavior of a car. + </brief_description> + <description> + This node implements all the physics logic needed to simulate a car. It is based on the raycast vehicle system commonly found in physics engines. You will need to add a [CollisionShape3D] for the main body of your vehicle and add [VehicleWheel3D] nodes for the wheels. You should also add a [MeshInstance3D] to this node for the 3D model of your car but this model should not include meshes for the wheels. You should control the vehicle by using the [member brake], [member engine_force], and [member steering] properties and not change the position or orientation of this node directly. + [b]Note:[/b] The origin point of your VehicleBody3D will determine the center of gravity of your vehicle so it is better to keep this low and move the [CollisionShape3D] and [MeshInstance3D] upwards. + </description> + <tutorials> + </tutorials> + <methods> + </methods> + <members> + <member name="brake" type="float" setter="set_brake" getter="get_brake" default="0.0"> + Slows down the vehicle by applying a braking force. The vehicle is only slowed down if the wheels are in contact with a surface. The force you need to apply to adequately slow down your vehicle depends on the [member RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 30 range for hard braking. + </member> + <member name="engine_force" type="float" setter="set_engine_force" getter="get_engine_force" default="0.0"> + Accelerates the vehicle by applying an engine force. The vehicle is only speed up if the wheels that have [member VehicleWheel3D.use_as_traction] set to [code]true[/code] and are in contact with a surface. The [member RigidBody3D.mass] of the vehicle has an effect on the acceleration of the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 range for acceleration. + [b]Note:[/b] The simulation does not take the effect of gears into account, you will need to add logic for this if you wish to simulate gears. + A negative value will result in the vehicle reversing. + </member> + <member name="mass" type="float" setter="set_mass" getter="get_mass" override="true" default="40.0" /> + <member name="steering" type="float" setter="set_steering" getter="get_steering" default="0.0"> + The steering angle for the vehicle. Setting this to a non-zero value will result in the vehicle turning when it's moving. Wheels that have [member VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically be rotated. + </member> + <member name="weight" type="float" setter="set_weight" getter="get_weight" override="true" default="392.0" /> + </members> + <constants> + </constants> +</class> |