123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- :github_url: hide
- .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
- .. DO NOT EDIT THIS FILE, but the VisibilityEnabler.xml source instead.
- .. The source is found in doc/classes or modules/<name>/doc_classes.
- .. _class_VisibilityEnabler:
- VisibilityEnabler
- =================
- **Inherits:** :ref:`VisibilityNotifier<class_VisibilityNotifier>` **<** :ref:`Spatial<class_Spatial>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
- Enables certain nodes only when approximately visible.
- Description
- -----------
- The VisibilityEnabler will disable :ref:`RigidBody<class_RigidBody>` and :ref:`AnimationPlayer<class_AnimationPlayer>` nodes when they are not visible. It will only affect other nodes within the same scene as the VisibilityEnabler itself.
- If you just want to receive notifications, use :ref:`VisibilityNotifier<class_VisibilityNotifier>` instead.
- **Note:** VisibilityEnabler uses an approximate heuristic for performance reasons. It doesn't take walls and other occlusion into account. The heuristic is an implementation detail and may change in future versions. If you need precise visibility checking, use another method such as adding an :ref:`Area<class_Area>` node as a child of a :ref:`Camera<class_Camera>` node and/or :ref:`Vector3.dot<class_Vector3_method_dot>`.
- **Note:** VisibilityEnabler will not affect nodes added after scene initialization.
- Properties
- ----------
- +-------------------------+----------------------------------------------------------------------------+----------+
- | :ref:`bool<class_bool>` | :ref:`freeze_bodies<class_VisibilityEnabler_property_freeze_bodies>` | ``true`` |
- +-------------------------+----------------------------------------------------------------------------+----------+
- | :ref:`bool<class_bool>` | :ref:`pause_animations<class_VisibilityEnabler_property_pause_animations>` | ``true`` |
- +-------------------------+----------------------------------------------------------------------------+----------+
- Methods
- -------
- +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`is_enabler_enabled<class_VisibilityEnabler_method_is_enabler_enabled>` **(** :ref:`Enabler<enum_VisibilityEnabler_Enabler>` enabler **)** |const| |
- +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_enabler<class_VisibilityEnabler_method_set_enabler>` **(** :ref:`Enabler<enum_VisibilityEnabler_Enabler>` enabler, :ref:`bool<class_bool>` enabled **)** |
- +-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
- Enumerations
- ------------
- .. _enum_VisibilityEnabler_Enabler:
- .. _class_VisibilityEnabler_constant_ENABLER_PAUSE_ANIMATIONS:
- .. _class_VisibilityEnabler_constant_ENABLER_FREEZE_BODIES:
- .. _class_VisibilityEnabler_constant_ENABLER_MAX:
- enum **Enabler**:
- - **ENABLER_PAUSE_ANIMATIONS** = **0** --- This enabler will pause :ref:`AnimationPlayer<class_AnimationPlayer>` nodes.
- - **ENABLER_FREEZE_BODIES** = **1** --- This enabler will freeze :ref:`RigidBody<class_RigidBody>` nodes.
- - **ENABLER_MAX** = **2** --- Represents the size of the :ref:`Enabler<enum_VisibilityEnabler_Enabler>` enum.
- Property Descriptions
- ---------------------
- .. _class_VisibilityEnabler_property_freeze_bodies:
- - :ref:`bool<class_bool>` **freeze_bodies**
- +-----------+----------------------+
- | *Default* | ``true`` |
- +-----------+----------------------+
- | *Setter* | set_enabler(value) |
- +-----------+----------------------+
- | *Getter* | is_enabler_enabled() |
- +-----------+----------------------+
- If ``true``, :ref:`RigidBody<class_RigidBody>` nodes will be paused.
- ----
- .. _class_VisibilityEnabler_property_pause_animations:
- - :ref:`bool<class_bool>` **pause_animations**
- +-----------+----------------------+
- | *Default* | ``true`` |
- +-----------+----------------------+
- | *Setter* | set_enabler(value) |
- +-----------+----------------------+
- | *Getter* | is_enabler_enabled() |
- +-----------+----------------------+
- If ``true``, :ref:`AnimationPlayer<class_AnimationPlayer>` nodes will be paused.
- Method Descriptions
- -------------------
- .. _class_VisibilityEnabler_method_is_enabler_enabled:
- - :ref:`bool<class_bool>` **is_enabler_enabled** **(** :ref:`Enabler<enum_VisibilityEnabler_Enabler>` enabler **)** |const|
- Returns whether the enabler identified by given :ref:`Enabler<enum_VisibilityEnabler_Enabler>` constant is active.
- ----
- .. _class_VisibilityEnabler_method_set_enabler:
- - void **set_enabler** **(** :ref:`Enabler<enum_VisibilityEnabler_Enabler>` enabler, :ref:`bool<class_bool>` enabled **)**
- Sets active state of the enabler identified by given :ref:`Enabler<enum_VisibilityEnabler_Enabler>` constant.
- .. |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.)`
|