2018-05-12 15:38:00 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2020-03-31 00:22:57 +08:00
<class name= "PhysicalBone3D" inherits= "PhysicsBody3D" version= "4.0" >
2018-05-12 15:38:00 +08:00
<brief_description >
</brief_description>
<description >
</description>
<tutorials >
</tutorials>
<methods >
2019-12-17 18:43:07 +08:00
<method name= "apply_central_impulse" >
<return type= "void" >
</return>
<argument index= "0" name= "impulse" type= "Vector3" >
</argument>
<description >
</description>
</method>
<method name= "apply_impulse" >
<return type= "void" >
</return>
2020-03-26 12:23:34 +08:00
<argument index= "0" name= "impulse" type= "Vector3" >
2019-12-17 18:43:07 +08:00
</argument>
2019-09-25 01:45:03 +08:00
<argument index= "1" name= "position" type= "Vector3" default= "Vector3(0, 0, 0)" >
2019-12-17 18:43:07 +08:00
</argument>
<description >
</description>
</method>
2018-08-21 06:35:30 +08:00
<method name= "get_bone_id" qualifiers= "const" >
<return type= "int" >
</return>
<description >
</description>
</method>
2018-05-28 20:53:15 +08:00
<method name= "get_simulate_physics" >
<return type= "bool" >
</return>
<description >
</description>
</method>
2018-05-12 15:38:00 +08:00
<method name= "is_simulating_physics" >
<return type= "bool" >
</return>
<description >
</description>
</method>
</methods>
<members >
2020-03-26 19:59:21 +08:00
<member name= "angular_damp" type= "float" setter= "set_angular_damp" getter= "get_angular_damp" default= "-1.0" >
Damps the body's rotation if greater than [code]0[/code].
</member>
2019-09-25 01:45:03 +08:00
<member name= "body_offset" type= "Transform3D" setter= "set_body_offset" getter= "get_body_offset" default= "Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)" >
2020-03-26 19:59:21 +08:00
Sets the body's transform.
2018-05-12 15:38:00 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "bounce" type= "float" setter= "set_bounce" getter= "get_bounce" default= "0.0" >
2020-03-26 19:59:21 +08:00
The body's bounciness. Values range from [code]0[/code] (no bounce) to [code]1[/code] (full bounciness).
</member>
<member name= "can_sleep" type= "bool" setter= "set_can_sleep" getter= "is_able_to_sleep" default= "true" >
2021-03-18 19:04:28 +08:00
If [code]true[/code], the body is deactivated when there is no movement, so it will not take part in the simulation until it is awakened by an external force.
2018-05-12 15:38:00 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "friction" type= "float" setter= "set_friction" getter= "get_friction" default= "1.0" >
2020-03-26 19:59:21 +08:00
The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] (max friction).
2018-05-12 15:38:00 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "gravity_scale" type= "float" setter= "set_gravity_scale" getter= "get_gravity_scale" default= "1.0" >
2020-03-26 19:59:21 +08:00
This is multiplied by the global 3D gravity setting found in [b]Project > Project Settings > Physics > 3d[/b] to produce the body's gravity. For example, a value of 1 will be normal gravity, 2 will apply double gravity, and 0.5 will apply half gravity to this object.
2018-05-12 15:38:00 +08:00
</member>
2019-09-25 01:45:03 +08:00
<member name= "joint_offset" type= "Transform3D" setter= "set_joint_offset" getter= "get_joint_offset" default= "Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)" >
2020-03-26 19:59:21 +08:00
Sets the joint's transform.
</member>
Fix editor suffixes and degrees conversion
* Functions to convert to/from degrees are all gone. Conversion is done by the editor.
* Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees.
* Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m"
* In general, can add suffixes for EditorSpinSlider
Not covered by this PR, will have to be addressed by future ones:
* Ability to switch radians/degrees in the inspector for angle properties (if actually wanted).
* Animations previously made will most likely break, need to add a way to make old ones compatible.
* Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes.
* Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-30 03:42:12 +08:00
<member name= "joint_rotation" type= "Vector3" setter= "set_joint_rotation" getter= "get_joint_rotation" default= "Vector3(0, 0, 0)" >
2020-03-26 19:59:21 +08:00
Sets the joint's rotation in radians.
</member>
2020-03-31 00:22:57 +08:00
<member name= "joint_type" type= "int" setter= "set_joint_type" getter= "get_joint_type" enum= "PhysicalBone3D.JointType" default= "0" >
2020-03-26 19:59:21 +08:00
Sets the joint type. See [enum JointType] for possible values.
</member>
<member name= "linear_damp" type= "float" setter= "set_linear_damp" getter= "get_linear_damp" default= "-1.0" >
Damps the body's movement if greater than [code]0[/code].
2018-05-12 15:38:00 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "mass" type= "float" setter= "set_mass" getter= "get_mass" default= "1.0" >
2020-03-26 19:59:21 +08:00
The body's mass.
2018-05-12 15:38:00 +08:00
</member>
</members>
<constants >
<constant name= "JOINT_TYPE_NONE" value= "0" enum= "JointType" >
</constant>
<constant name= "JOINT_TYPE_PIN" value= "1" enum= "JointType" >
</constant>
<constant name= "JOINT_TYPE_CONE" value= "2" enum= "JointType" >
</constant>
<constant name= "JOINT_TYPE_HINGE" value= "3" enum= "JointType" >
</constant>
<constant name= "JOINT_TYPE_SLIDER" value= "4" enum= "JointType" >
</constant>
<constant name= "JOINT_TYPE_6DOF" value= "5" enum= "JointType" >
</constant>
</constants>
</class>