2022-11-22 16:29:56 +01:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-07-06 10:08:05 +02:00
<class name= "GLTFPhysicsBody" inherits= "Resource" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../../../doc/class.xsd" >
2022-11-22 16:29:56 +01:00
<brief_description >
Represents a GLTF physics body.
</brief_description>
<description >
Represents a physics body as defined by the [code]OMI_physics_body[/code] GLTF extension. This class is an intermediary between the GLTF data and Godot's nodes, and it's abstracted in a way that allows adding support for different GLTF physics extensions in the future.
</description>
<tutorials >
<link title= "OMI_physics_body GLTF extension" > https://github.com/omigroup/gltf-extensions/tree/main/extensions/2.0/OMI_physics_body</link>
</tutorials>
<methods >
<method name= "from_dictionary" qualifiers= "static" >
<return type= "GLTFPhysicsBody" />
<param index= "0" name= "dictionary" type= "Dictionary" />
<description >
Creates a new GLTFPhysicsBody instance by parsing the given [Dictionary].
</description>
</method>
<method name= "from_node" qualifiers= "static" >
<return type= "GLTFPhysicsBody" />
<param index= "0" name= "body_node" type= "CollisionObject3D" />
<description >
Create a new GLTFPhysicsBody instance from the given Godot [CollisionObject3D] node.
</description>
</method>
<method name= "to_dictionary" qualifiers= "const" >
<return type= "Dictionary" />
<description >
Serializes this GLTFPhysicsBody instance into a [Dictionary].
</description>
</method>
<method name= "to_node" qualifiers= "const" >
<return type= "CollisionObject3D" />
<description >
Converts this GLTFPhysicsBody instance into a Godot [CollisionObject3D] node.
</description>
</method>
</methods>
<members >
<member name= "angular_velocity" type= "Vector3" setter= "set_angular_velocity" getter= "get_angular_velocity" default= "Vector3(0, 0, 0)" >
The angular velocity of the physics body, in radians per second. This is only used when the body type is "rigid" or "vehicle".
</member>
<member name= "body_type" type= "String" setter= "set_body_type" getter= "get_body_type" default= ""static"" >
2023-08-10 00:10:29 +02:00
The type of the body. When importing, this controls what type of [CollisionObject3D] node Godot should generate. Valid values are "static", "kinematic", "character", "rigid", "vehicle", and "trigger".
</member>
<member name= "center_of_mass" type= "Vector3" setter= "set_center_of_mass" getter= "get_center_of_mass" default= "Vector3(0, 0, 0)" >
The center of mass of the body, in meters. This is in local space relative to the body. By default, the center of the mass is the body's origin.
2022-11-22 16:29:56 +01:00
</member>
2023-06-07 04:03:28 +02:00
<member name= "inertia_tensor" type= "Basis" setter= "set_inertia_tensor" getter= "get_inertia_tensor" default= "Basis(0, 0, 0, 0, 0, 0, 0, 0, 0)" >
The inertia tensor of the physics body, in kilogram meter squared (kg⋅m²). This is only used when the body type is "rigid" or "vehicle".
When converted to a Godot [RigidBody3D] node, if this value is zero, then the inertia will be calculated automatically.
2022-11-22 16:29:56 +01:00
</member>
<member name= "linear_velocity" type= "Vector3" setter= "set_linear_velocity" getter= "get_linear_velocity" default= "Vector3(0, 0, 0)" >
The linear velocity of the physics body, in meters per second. This is only used when the body type is "rigid" or "vehicle".
</member>
<member name= "mass" type= "float" setter= "set_mass" getter= "get_mass" default= "1.0" >
The mass of the physics body, in kilograms. This is only used when the body type is "rigid" or "vehicle".
</member>
</members>
</class>