123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- :github_url: hide
- .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
- .. DO NOT EDIT THIS FILE, but the ClippedCamera.xml source instead.
- .. The source is found in doc/classes or modules/<name>/doc_classes.
- .. _class_ClippedCamera:
- ClippedCamera
- =============
- **Inherits:** :ref:`Camera<class_Camera>` **<** :ref:`Spatial<class_Spatial>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
- A :ref:`Camera<class_Camera>` that includes collision.
- Description
- -----------
- This node extends :ref:`Camera<class_Camera>` to add collisions with :ref:`Area<class_Area>` and/or :ref:`PhysicsBody<class_PhysicsBody>` nodes. The camera cannot move through colliding objects.
- Properties
- ----------
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- | :ref:`bool<class_bool>` | :ref:`clip_to_areas<class_ClippedCamera_property_clip_to_areas>` | ``false`` |
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- | :ref:`bool<class_bool>` | :ref:`clip_to_bodies<class_ClippedCamera_property_clip_to_bodies>` | ``true`` |
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- | :ref:`int<class_int>` | :ref:`collision_mask<class_ClippedCamera_property_collision_mask>` | ``1`` |
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- | :ref:`float<class_float>` | :ref:`margin<class_ClippedCamera_property_margin>` | ``0.0`` |
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- | :ref:`ProcessMode<enum_ClippedCamera_ProcessMode>` | :ref:`process_mode<class_ClippedCamera_property_process_mode>` | ``0`` |
- +----------------------------------------------------+--------------------------------------------------------------------+-----------+
- Methods
- -------
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`add_exception<class_ClippedCamera_method_add_exception>` **(** :ref:`Object<class_Object>` node **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`add_exception_rid<class_ClippedCamera_method_add_exception_rid>` **(** :ref:`RID<class_RID>` rid **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`clear_exceptions<class_ClippedCamera_method_clear_exceptions>` **(** **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`float<class_float>` | :ref:`get_clip_offset<class_ClippedCamera_method_get_clip_offset>` **(** **)** |const| |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`get_collision_mask_bit<class_ClippedCamera_method_get_collision_mask_bit>` **(** :ref:`int<class_int>` bit **)** |const| |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`remove_exception<class_ClippedCamera_method_remove_exception>` **(** :ref:`Object<class_Object>` node **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`remove_exception_rid<class_ClippedCamera_method_remove_exception_rid>` **(** :ref:`RID<class_RID>` rid **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_collision_mask_bit<class_ClippedCamera_method_set_collision_mask_bit>` **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)** |
- +---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
- Enumerations
- ------------
- .. _enum_ClippedCamera_ProcessMode:
- .. _class_ClippedCamera_constant_CLIP_PROCESS_PHYSICS:
- .. _class_ClippedCamera_constant_CLIP_PROCESS_IDLE:
- enum **ProcessMode**:
- - **CLIP_PROCESS_PHYSICS** = **0** --- The camera updates with the ``_physics_process`` callback.
- - **CLIP_PROCESS_IDLE** = **1** --- The camera updates with the ``_process`` callback.
- Property Descriptions
- ---------------------
- .. _class_ClippedCamera_property_clip_to_areas:
- - :ref:`bool<class_bool>` **clip_to_areas**
- +-----------+----------------------------+
- | *Default* | ``false`` |
- +-----------+----------------------------+
- | *Setter* | set_clip_to_areas(value) |
- +-----------+----------------------------+
- | *Getter* | is_clip_to_areas_enabled() |
- +-----------+----------------------------+
- If ``true``, the camera stops on contact with :ref:`Area<class_Area>`\ s.
- ----
- .. _class_ClippedCamera_property_clip_to_bodies:
- - :ref:`bool<class_bool>` **clip_to_bodies**
- +-----------+-----------------------------+
- | *Default* | ``true`` |
- +-----------+-----------------------------+
- | *Setter* | set_clip_to_bodies(value) |
- +-----------+-----------------------------+
- | *Getter* | is_clip_to_bodies_enabled() |
- +-----------+-----------------------------+
- If ``true``, the camera stops on contact with :ref:`PhysicsBody<class_PhysicsBody>`\ s.
- ----
- .. _class_ClippedCamera_property_collision_mask:
- - :ref:`int<class_int>` **collision_mask**
- +-----------+---------------------------+
- | *Default* | ``1`` |
- +-----------+---------------------------+
- | *Setter* | set_collision_mask(value) |
- +-----------+---------------------------+
- | *Getter* | get_collision_mask() |
- +-----------+---------------------------+
- The camera's collision mask. Only objects in at least one collision layer matching the mask will be detected. See `Collision layers and masks <https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-masks>`__ in the documentation for more information.
- ----
- .. _class_ClippedCamera_property_margin:
- - :ref:`float<class_float>` **margin**
- +-----------+-------------------+
- | *Default* | ``0.0`` |
- +-----------+-------------------+
- | *Setter* | set_margin(value) |
- +-----------+-------------------+
- | *Getter* | get_margin() |
- +-----------+-------------------+
- The camera's collision margin. The camera can't get closer than this distance to a colliding object.
- ----
- .. _class_ClippedCamera_property_process_mode:
- - :ref:`ProcessMode<enum_ClippedCamera_ProcessMode>` **process_mode**
- +-----------+-------------------------+
- | *Default* | ``0`` |
- +-----------+-------------------------+
- | *Setter* | set_process_mode(value) |
- +-----------+-------------------------+
- | *Getter* | get_process_mode() |
- +-----------+-------------------------+
- The camera's process callback. See :ref:`ProcessMode<enum_ClippedCamera_ProcessMode>`.
- Method Descriptions
- -------------------
- .. _class_ClippedCamera_method_add_exception:
- - void **add_exception** **(** :ref:`Object<class_Object>` node **)**
- Adds a collision exception so the camera does not collide with the specified node.
- ----
- .. _class_ClippedCamera_method_add_exception_rid:
- - void **add_exception_rid** **(** :ref:`RID<class_RID>` rid **)**
- Adds a collision exception so the camera does not collide with the specified :ref:`RID<class_RID>`.
- ----
- .. _class_ClippedCamera_method_clear_exceptions:
- - void **clear_exceptions** **(** **)**
- Removes all collision exceptions.
- ----
- .. _class_ClippedCamera_method_get_clip_offset:
- - :ref:`float<class_float>` **get_clip_offset** **(** **)** |const|
- Returns the distance the camera has been offset due to a collision.
- ----
- .. _class_ClippedCamera_method_get_collision_mask_bit:
- - :ref:`bool<class_bool>` **get_collision_mask_bit** **(** :ref:`int<class_int>` bit **)** |const|
- Returns ``true`` if the specified bit index is on.
- **Note:** Bit indices range from 0-19.
- ----
- .. _class_ClippedCamera_method_remove_exception:
- - void **remove_exception** **(** :ref:`Object<class_Object>` node **)**
- Removes a collision exception with the specified node.
- ----
- .. _class_ClippedCamera_method_remove_exception_rid:
- - void **remove_exception_rid** **(** :ref:`RID<class_RID>` rid **)**
- Removes a collision exception with the specified :ref:`RID<class_RID>`.
- ----
- .. _class_ClippedCamera_method_set_collision_mask_bit:
- - void **set_collision_mask_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
- Sets the specified bit index to the ``value``.
- **Note:** Bit indices range from 0-19.
- .. |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.)`
|