:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/3.6/doc/classes/PhysicsMaterial.xml. .. _class_PhysicsMaterial: PhysicsMaterial =============== **Inherits:** :ref:`Resource` **<** :ref:`Reference` **<** :ref:`Object` A material for physics properties. .. rst-class:: classref-introduction-group Description ----------- Provides a means of modifying the collision properties of a :ref:`PhysicsBody`. .. rst-class:: classref-reftable-group Properties ---------- .. table:: :widths: auto +---------------------------+------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`absorbent` | ``false`` | +---------------------------+------------------------------------------------------------+-----------+ | :ref:`float` | :ref:`bounce` | ``0.0`` | +---------------------------+------------------------------------------------------------+-----------+ | :ref:`float` | :ref:`friction` | ``1.0`` | +---------------------------+------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`rough` | ``false`` | +---------------------------+------------------------------------------------------------+-----------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Property Descriptions --------------------- .. _class_PhysicsMaterial_property_absorbent: .. rst-class:: classref-property :ref:`bool` **absorbent** = ``false`` .. rst-class:: classref-property-setget - void **set_absorbent** **(** :ref:`bool` value **)** - :ref:`bool` **is_absorbent** **(** **)** If ``true``, subtracts the bounciness from the colliding object's bounciness instead of adding it. .. rst-class:: classref-item-separator ---- .. _class_PhysicsMaterial_property_bounce: .. rst-class:: classref-property :ref:`float` **bounce** = ``0.0`` .. rst-class:: classref-property-setget - void **set_bounce** **(** :ref:`float` value **)** - :ref:`float` **get_bounce** **(** **)** The body's bounciness. Values range from ``0`` (no bounce) to ``1`` (full bounciness). .. rst-class:: classref-item-separator ---- .. _class_PhysicsMaterial_property_friction: .. rst-class:: classref-property :ref:`float` **friction** = ``1.0`` .. rst-class:: classref-property-setget - void **set_friction** **(** :ref:`float` value **)** - :ref:`float` **get_friction** **(** **)** The body's friction. Values range from ``0`` (frictionless) to ``1`` (maximum friction). .. rst-class:: classref-item-separator ---- .. _class_PhysicsMaterial_property_rough: .. rst-class:: classref-property :ref:`bool` **rough** = ``false`` .. rst-class:: classref-property-setget - void **set_rough** **(** :ref:`bool` value **)** - :ref:`bool` **is_rough** **(** **)** If ``true``, the physics engine will use the friction of the object marked as "rough" when two objects collide. If ``false``, the physics engine will use the lowest friction of all colliding objects instead. If ``true`` for both colliding objects, the physics engine will use the highest friction. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`