@@ -345,12 +361,16 @@ Decodes a byte array back to a value. When ``allow_objects`` is ``true`` decodin
**WARNING:** Deserialized object can contain code which gets executed. Do not use this option if the serialized object comes from untrusted sources to avoid potential security threats (remote code execution).
**WARNING:** Deserialized object can contain code which gets executed. Do not use this option if the serialized object comes from untrusted sources to avoid potential security threats (remote code execution).
+----
+
.. _class_@GDScript_method_cartesian2polar:
.. _class_@GDScript_method_cartesian2polar:
- :ref:`Vector2<class_Vector2>` **cartesian2polar** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
- :ref:`Vector2<class_Vector2>` **cartesian2polar** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
Converts a 2D point expressed in the cartesian coordinate system (X and Y axis) to the polar coordinate system (a distance from the origin and an angle).
Converts a 2D point expressed in the cartesian coordinate system (X and Y axis) to the polar coordinate system (a distance from the origin and an angle).
+----
+
.. _class_@GDScript_method_ceil:
.. _class_@GDScript_method_ceil:
- :ref:`float<class_float>` **ceil** **(** :ref:`float<class_float>` s **)**
- :ref:`float<class_float>` **ceil** **(** :ref:`float<class_float>` s **)**
@@ -362,6 +382,8 @@ Rounds ``s`` upward, returning the smallest integral value that is not less than
Converts a 2D point expressed in the polar coordinate system (a distance from the origin ``r`` and an angle ``th``) to the cartesian coordinate system (X and Y axis).
Converts a 2D point expressed in the polar coordinate system (a distance from the origin ``r`` and an angle ``th``) to the cartesian coordinate system (X and Y axis).
+----
+
.. _class_@GDScript_method_posmod:
.. _class_@GDScript_method_posmod:
- :ref:`int<class_int>` **posmod** **(** :ref:`int<class_int>` a, :ref:`int<class_int>` b **)**
- :ref:`int<class_int>` **posmod** **(** :ref:`int<class_int>` a, :ref:`int<class_int>` b **)**
Random from seed: pass a ``seed``, and an array with both number and new seed is returned. "Seed" here refers to the internal state of the pseudo random number generator. The internal state of the current implementation is 64 bits.
Random from seed: pass a ``seed``, and an array with both number and new seed is returned. "Seed" here refers to the internal state of the pseudo random number generator. The internal state of the current implementation is 64 bits.
+----
+
.. _class_@GDScript_method_randf:
.. _class_@GDScript_method_randf:
- :ref:`float<class_float>` **randf** **(** **)**
- :ref:`float<class_float>` **randf** **(** **)**
@@ -994,6 +1124,8 @@ Returns a random floating point value on the interval ``[0, 1]``.
randf() # Returns e.g. 0.375671
randf() # Returns e.g. 0.375671
+----
+
.. _class_@GDScript_method_randi:
.. _class_@GDScript_method_randi:
- :ref:`int<class_int>` **randi** **(** **)**
- :ref:`int<class_int>` **randi** **(** **)**
@@ -1007,6 +1139,8 @@ Returns a random unsigned 32 bit integer. Use remainder to obtain a random value
randi() % 100 # Returns random integer between 0 and 99
randi() % 100 # Returns random integer between 0 and 99
randi() % 100 + 1 # Returns random integer between 1 and 100
randi() % 100 + 1 # Returns random integer between 1 and 100
+----
+
.. _class_@GDScript_method_randomize:
.. _class_@GDScript_method_randomize:
- void **randomize** **(** **)**
- void **randomize** **(** **)**
@@ -1018,6 +1152,8 @@ Randomizes the seed (or the internal state) of the random number generator. Curr
@@ -1294,6 +1472,8 @@ Returns a weak reference to an object.
A weak reference to an object is not enough to keep the object alive: when the only remaining references to a referent are weak references, garbage collection is free to destroy the referent and reuse its memory for something else. However, until the object is actually destroyed the weak reference may return the object even if there are no strong references to it.
A weak reference to an object is not enough to keep the object alive: when the only remaining references to a referent are weak references, garbage collection is free to destroy the referent and reuse its memory for something else. However, until the object is actually destroyed the weak reference may return the object even if there are no strong references to it.
- **HORIZONTAL** = **0** --- General horizontal alignment, usually used for :ref:`Separator<class_Separator>`, :ref:`ScrollBar<class_ScrollBar>`, :ref:`Slider<class_Slider>`, etc.
- **HORIZONTAL** = **0** --- General horizontal alignment, usually used for :ref:`Separator<class_Separator>`, :ref:`ScrollBar<class_ScrollBar>`, :ref:`Slider<class_Slider>`, etc.
+----
+
.. _enum_@GlobalScope_HAlign:
.. _enum_@GlobalScope_HAlign:
.. _class_@GlobalScope_constant_HALIGN_LEFT:
.. _class_@GlobalScope_constant_HALIGN_LEFT:
@@ -138,6 +144,8 @@ enum **HAlign**:
- **HALIGN_RIGHT** = **2** --- Horizontal right alignment, usually for text-derived classes.
- **HALIGN_RIGHT** = **2** --- Horizontal right alignment, usually for text-derived classes.
+----
+
.. _enum_@GlobalScope_VAlign:
.. _enum_@GlobalScope_VAlign:
.. _class_@GlobalScope_constant_VALIGN_TOP:
.. _class_@GlobalScope_constant_VALIGN_TOP:
@@ -154,6 +162,8 @@ enum **VAlign**:
- **VALIGN_BOTTOM** = **2** --- Vertical bottom alignment, usually for text-derived classes.
- **VALIGN_BOTTOM** = **2** --- Vertical bottom alignment, usually for text-derived classes.
+----
+
.. _enum_@GlobalScope_KeyList:
.. _enum_@GlobalScope_KeyList:
.. _class_@GlobalScope_constant_KEY_ESCAPE:
.. _class_@GlobalScope_constant_KEY_ESCAPE:
@@ -1126,6 +1136,8 @@ enum **KeyList**:
- **KEY_YDIAERESIS** = **255** --- ÿ key.
- **KEY_YDIAERESIS** = **255** --- ÿ key.
+----
+
.. _enum_@GlobalScope_KeyModifierMask:
.. _enum_@GlobalScope_KeyModifierMask:
.. _class_@GlobalScope_constant_KEY_CODE_MASK:
.. _class_@GlobalScope_constant_KEY_CODE_MASK:
@@ -1166,6 +1178,8 @@ enum **KeyModifierMask**:
- **KEY_MASK_GROUP_SWITCH** = **1073741824** --- Group Switch key mask.
- **KEY_MASK_GROUP_SWITCH** = **1073741824** --- Group Switch key mask.
+----
+
.. _enum_@GlobalScope_ButtonList:
.. _enum_@GlobalScope_ButtonList:
.. _class_@GlobalScope_constant_BUTTON_LEFT:
.. _class_@GlobalScope_constant_BUTTON_LEFT:
@@ -1226,6 +1240,8 @@ enum **ButtonList**:
- **BUTTON_MASK_XBUTTON2** = **256** --- Extra mouse button 2 mask.
- **BUTTON_MASK_XBUTTON2** = **256** --- Extra mouse button 2 mask.
+----
+
.. _enum_@GlobalScope_JoystickList:
.. _enum_@GlobalScope_JoystickList:
.. _class_@GlobalScope_constant_JOY_BUTTON_0:
.. _class_@GlobalScope_constant_JOY_BUTTON_0:
@@ -1506,6 +1522,8 @@ enum **JoystickList**:
- **JOY_OPENVR_TOUCHPADY** = **1** --- OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR controllers).
- **JOY_OPENVR_TOUCHPADY** = **1** --- OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR controllers).
@@ -101,6 +105,8 @@ If ``true``, the dialog is hidden when the OK button is pressed. You can set it
**Note:** Some nodes derived from this class can have a different default value, and potentially their own built-in logic overriding this setting. For example :ref:`FileDialog<class_FileDialog>` defaults to ``false``, and has its own input validation code that is called when you press OK, which eventually hides the dialog if the input is valid. As such, this property can't be used in :ref:`FileDialog<class_FileDialog>` to disable hiding the dialog when pressing OK.
**Note:** Some nodes derived from this class can have a different default value, and potentially their own built-in logic overriding this setting. For example :ref:`FileDialog<class_FileDialog>` defaults to ``false``, and has its own input validation code that is called when you press OK, which eventually hides the dialog if the input is valid. As such, this property can't be used in :ref:`FileDialog<class_FileDialog>` to disable hiding the dialog when pressing OK.
+----
+
.. _class_AcceptDialog_property_dialog_text:
.. _class_AcceptDialog_property_dialog_text:
- :ref:`String<class_String>` **dialog_text**
- :ref:`String<class_String>` **dialog_text**
@@ -126,24 +132,32 @@ Adds a button with label ``text`` and a custom ``action`` to the dialog and retu
If ``true``, ``right`` will place the button to the right of any sibling buttons.
If ``true``, ``right`` will place the button to the right of any sibling buttons.
+----
+
.. _class_AcceptDialog_method_add_cancel:
.. _class_AcceptDialog_method_add_cancel:
- :ref:`Button<class_Button>` **add_cancel** **(** :ref:`String<class_String>` name **)**
- :ref:`Button<class_Button>` **add_cancel** **(** :ref:`String<class_String>` name **)**
Adds a button with label ``name`` and a cancel action to the dialog and returns the created button.
Adds a button with label ``name`` and a cancel action to the dialog and returns the created button.
Emitted when the animation is finished (when it plays the last frame). If the animation is looping, this signal is emitted every time the last frame is drawn.
Emitted when the animation is finished (when it plays the last frame). If the animation is looping, this signal is emitted every time the last frame is drawn.
+----
+
.. _class_AnimatedSprite_signal_frame_changed:
.. _class_AnimatedSprite_signal_frame_changed:
- **frame_changed** **(** **)**
- **frame_changed** **(** **)**
@@ -89,6 +91,8 @@ Property Descriptions
The current animation from the ``frames`` resource. If this value changes, the ``frame`` counter is reset.
The current animation from the ``frames`` resource. If this value changes, the ``frame`` counter is reset.
+----
+
.. _class_AnimatedSprite_property_centered:
.. _class_AnimatedSprite_property_centered:
- :ref:`bool<class_bool>` **centered**
- :ref:`bool<class_bool>` **centered**
@@ -103,6 +107,8 @@ The current animation from the ``frames`` resource. If this value changes, the `
If ``true``, texture will be centered.
If ``true``, texture will be centered.
+----
+
.. _class_AnimatedSprite_property_flip_h:
.. _class_AnimatedSprite_property_flip_h:
- :ref:`bool<class_bool>` **flip_h**
- :ref:`bool<class_bool>` **flip_h**
@@ -117,6 +123,8 @@ If ``true``, texture will be centered.
If ``true``, texture is flipped horizontally.
If ``true``, texture is flipped horizontally.
+----
+
.. _class_AnimatedSprite_property_flip_v:
.. _class_AnimatedSprite_property_flip_v:
- :ref:`bool<class_bool>` **flip_v**
- :ref:`bool<class_bool>` **flip_v**
@@ -131,6 +139,8 @@ If ``true``, texture is flipped horizontally.
If ``true``, texture is flipped vertically.
If ``true``, texture is flipped vertically.
+----
+
.. _class_AnimatedSprite_property_frame:
.. _class_AnimatedSprite_property_frame:
- :ref:`int<class_int>` **frame**
- :ref:`int<class_int>` **frame**
@@ -145,6 +155,8 @@ If ``true``, texture is flipped vertically.
Plays the animation named ``anim``. If no ``anim`` is provided, the current animation is played. If ``backwards`` is ``true``, the animation will be played in reverse.
Plays the animation named ``anim``. If no ``anim`` is provided, the current animation is played. If ``backwards`` is ``true``, the animation will be played in reverse.
@@ -265,6 +269,8 @@ The total length of the animation (in seconds).
**Note:** Length is not delimited by the last key, as this one may be before or after the end to ensure correct interpolation and looping.
**Note:** Length is not delimited by the last key, as this one may be before or after the end to ensure correct interpolation and looping.
+----
+
.. _class_Animation_property_loop:
.. _class_Animation_property_loop:
- :ref:`bool<class_bool>` **loop**
- :ref:`bool<class_bool>` **loop**
@@ -279,6 +285,8 @@ The total length of the animation (in seconds).
A flag indicating that the animation must loop. This is uses for correct interpolation of animation cycles, and for hinting the player that it must restart the animation.
A flag indicating that the animation must loop. This is uses for correct interpolation of animation cycles, and for hinting the player that it must restart the animation.
Sets the path of a track. Paths must be valid scene-tree paths to a node, and must be specified starting from the parent node of the node that will reproduce the animation. Tracks that control properties or bones must append their name after the path, separated by ``":"``.
Sets the path of a track. Paths must be valid scene-tree paths to a node, and must be specified starting from the parent node of the node that will reproduce the animation. Tracks that control properties or bones must append their name after the path, separated by ``":"``.
For example, ``"character/skeleton:ankle"`` or ``"character/mesh:transform/local"``.
For example, ``"character/skeleton:ankle"`` or ``"character/mesh:transform/local"``.
Returns the interpolated value of a transform track at a given time (in seconds). An array consisting of 3 elements: position (:ref:`Vector3<class_Vector3>`), rotation (:ref:`Quat<class_Quat>`) and scale (:ref:`Vector3<class_Vector3>`).
Returns the interpolated value of a transform track at a given time (in seconds). An array consisting of 3 elements: position (:ref:`Vector3<class_Vector3>`), rotation (:ref:`Quat<class_Quat>`) and scale (:ref:`Vector3<class_Vector3>`).
Blend an animation by "blend" amount (name must be valid in the linked :ref:`AnimationPlayer<class_AnimationPlayer>`). A time and delta mas be passed, as well as whether seek happened.
Blend an animation by "blend" amount (name must be valid in the linked :ref:`AnimationPlayer<class_AnimationPlayer>`). A time and delta mas be passed, as well as whether seek happened.
Blend an input. This is only useful for nodes created for an :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`. Time is a delta, unless "seek" is ``true``, in which case it is absolute. A filter mode may be optionally passed.
Blend an input. This is only useful for nodes created for an :ref:`AnimationNodeBlendTree<class_AnimationNodeBlendTree>`. Time is a delta, unless "seek" is ``true``, in which case it is absolute. A filter mode may be optionally passed.
Blend another animation node (in case this node contains children animation nodes). This function is only useful if you inherit from :ref:`AnimationRootNode<class_AnimationRootNode>` instead, else editors will not display your node for addition.
Blend another animation node (in case this node contains children animation nodes). This function is only useful if you inherit from :ref:`AnimationRootNode<class_AnimationRootNode>` instead, else editors will not display your node for addition.
Gets the property information for parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees. Format is similar to :ref:`Object.get_property_list<class_Object_method_get_property_list>`.
Gets the property information for parameter. Parameters are custom local memory used for your nodes, given a resource can be reused in multiple trees. Format is similar to :ref:`Object.get_property_list<class_Object_method_get_property_list>`.
Adds a new point that represents a ``node`` on the virtual axis at a given position set by ``pos``. You can insert it at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
Adds a new point that represents a ``node`` on the virtual axis at a given position set by ``pos``. You can insert it at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
If true, the blend space is triangulated automatically. The mesh updates every time you add or remove points with :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>` and :ref:`remove_blend_point<class_AnimationNodeBlendSpace2D_method_remove_blend_point>`.
If true, the blend space is triangulated automatically. The mesh updates every time you add or remove points with :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>` and :ref:`remove_blend_point<class_AnimationNodeBlendSpace2D_method_remove_blend_point>`.
@@ -146,6 +150,8 @@ Controls the interpolation between animations. See :ref:`BlendMode<enum_Animatio
The blend space's X and Y axes' upper limit for the points' position. See :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>`.
The blend space's X and Y axes' upper limit for the points' position. See :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>`.
@@ -160,6 +166,8 @@ The blend space's X and Y axes' upper limit for the points' position. See :ref:`
The blend space's X and Y axes' lower limit for the points' position. See :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>`.
The blend space's X and Y axes' lower limit for the points' position. See :ref:`add_blend_point<class_AnimationNodeBlendSpace2D_method_add_blend_point>`.
Adds a new point that represents a ``node`` at the position set by ``pos``. You can insert it at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
Adds a new point that represents a ``node`` at the position set by ``pos``. You can insert it at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
Creates a new triangle using three points ``x``, ``y``, and ``z``. Triangles can overlap. You can insert the triangle at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
Creates a new triangle using three points ``x``, ``y``, and ``z``. Triangles can overlap. You can insert the triangle at a specific index using the ``at_index`` argument. If you use the default value for ``at_index`` , the point is inserted at the end of the blend points array.
@@ -96,6 +98,8 @@ Turn on auto advance when this condition is set. The provided name will become a
Turn on the transition automatically when this state is reached. This works best with :ref:`SWITCH_MODE_AT_END<class_AnimationNodeStateMachineTransition_constant_SWITCH_MODE_AT_END>`.
Turn on the transition automatically when this state is reached. This works best with :ref:`SWITCH_MODE_AT_END<class_AnimationNodeStateMachineTransition_constant_SWITCH_MODE_AT_END>`.
@@ -110,6 +114,8 @@ Turn on the transition automatically when this state is reached. This works best
Don't use this transition during :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>` or :ref:`auto_advance<class_AnimationNodeStateMachineTransition_property_auto_advance>`.
Don't use this transition during :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>` or :ref:`auto_advance<class_AnimationNodeStateMachineTransition_property_auto_advance>`.
@@ -124,6 +130,8 @@ Don't use this transition during :ref:`AnimationNodeStateMachinePlayback.travel<
Lower priority transitions are preferred when travelling through the tree via :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>` or :ref:`auto_advance<class_AnimationNodeStateMachineTransition_property_auto_advance>`.
Lower priority transitions are preferred when travelling through the tree via :ref:`AnimationNodeStateMachinePlayback.travel<class_AnimationNodeStateMachinePlayback_method_travel>` or :ref:`auto_advance<class_AnimationNodeStateMachineTransition_property_auto_advance>`.
- **ANIMATION_PROCESS_MANUAL** = **2** --- Do not process animation. Use :ref:`advance<class_AnimationPlayer_method_advance>` to process the animation manually.
- **ANIMATION_PROCESS_MANUAL** = **2** --- Do not process animation. Use :ref:`advance<class_AnimationPlayer_method_advance>` to process the animation manually.
An animation player is used for general-purpose playback of :ref:`Animation<class_Animation>` resources. It contains a dictionary of animations (referenced by name) and custom blend times between their transitions. Additionally, animations can be played and blended in different channels.
An animation player is used for general-purpose playback of :ref:`Animation<class_Animation>` resources. It contains a dictionary of animations (referenced by name) and custom blend times between their transitions. Additionally, animations can be played and blended in different channels.
+Updating the target properties of animations occurs at process time.
+
Tutorials
Tutorials
---------
---------
@@ -179,6 +189,8 @@ Property Descriptions
If playing, the current animation; otherwise, the animation last played. When set, would change the animation, but would not play it unless currently playing. See also :ref:`current_animation<class_AnimationPlayer_property_current_animation>`.
If playing, the current animation; otherwise, the animation last played. When set, would change the animation, but would not play it unless currently playing. See also :ref:`current_animation<class_AnimationPlayer_property_current_animation>`.
+----
+
.. _class_AnimationPlayer_property_autoplay:
.. _class_AnimationPlayer_property_autoplay:
- :ref:`String<class_String>` **autoplay**
- :ref:`String<class_String>` **autoplay**
@@ -193,6 +205,8 @@ If playing, the current animation; otherwise, the animation last played. When se
The name of the animation to play when the scene loads.
The name of the animation to play when the scene loads.
@@ -207,6 +221,8 @@ The name of the animation to play when the scene loads.
The name of the current animation, "" if not playing anything. When being set, does not restart the animation. See also :ref:`play<class_AnimationPlayer_method_play>`.
The name of the current animation, "" if not playing anything. When being set, does not restart the animation. See also :ref:`play<class_AnimationPlayer_method_play>`.
@@ -295,6 +323,8 @@ The process notification in which to update animations.
The speed scaling ratio. For instance, if this value is 1, then the animation plays at normal speed. If it's 0.5, then it plays at half speed. If it's 2, then it plays at double speed.
The speed scaling ratio. For instance, if this value is 1, then the animation plays at normal speed. If it's 0.5, then it plays at half speed. If it's 2, then it plays at double speed.
+----
+
.. _class_AnimationPlayer_property_root_node:
.. _class_AnimationPlayer_property_root_node:
- :ref:`NodePath<class_NodePath>` **root_node**
- :ref:`NodePath<class_NodePath>` **root_node**
@@ -318,11 +348,15 @@ Method Descriptions
Adds ``animation`` to the player accessible with the key ``name``.
Adds ``animation`` to the player accessible with the key ``name``.
-Shifts position in the animation timeline. Delta is the time in seconds to shift. Events between the current frame and ``delta`` are handled.
+Shifts position in the animation timeline and immediately updates the animation. ``delta`` is the time in seconds to shift. Events between the current frame and ``delta`` are handled.
Triggers the ``anim_to`` animation when the ``anim_from`` animation completes.
Triggers the ``anim_to`` animation when the ``anim_from`` animation completes.
+----
+
.. _class_AnimationPlayer_method_clear_caches:
.. _class_AnimationPlayer_method_clear_caches:
- void **clear_caches** **(** **)**
- void **clear_caches** **(** **)**
``AnimationPlayer`` caches animated nodes. It may not notice if a node disappears; :ref:`clear_caches<class_AnimationPlayer_method_clear_caches>` forces it to update the cache again.
``AnimationPlayer`` caches animated nodes. It may not notice if a node disappears; :ref:`clear_caches<class_AnimationPlayer_method_clear_caches>` forces it to update the cache again.
Gets the actual playing speed of current animation or 0 if not playing. This speed is the ``playback_speed`` property multiplied by ``custom_speed`` argument specified when calling the ``play`` method.
Gets the actual playing speed of current animation or 0 if not playing. This speed is the ``playback_speed`` property multiplied by ``custom_speed`` argument specified when calling the ``play`` method.
@@ -404,6 +462,10 @@ Plays the animation with key ``name``. Custom speed and blend times can be set.
If the animation has been paused by :ref:`stop<class_AnimationPlayer_method_stop>`, it will be resumed. Calling :ref:`play<class_AnimationPlayer_method_play>` without arguments will also resume the animation.
If the animation has been paused by :ref:`stop<class_AnimationPlayer_method_stop>`, it will be resumed. Calling :ref:`play<class_AnimationPlayer_method_play>` without arguments will also resume the animation.
+**Note:** The animation will be updated the next time the AnimationPlayer is processed. If other variables are updated at the same time this is called, they may be updated too early. To perform the update immediately, call ``advance(0)``.
@@ -412,6 +474,10 @@ Plays the animation with key ``name`` in reverse.
If the animation has been paused by ``stop(true)``, it will be resumed backwards. Calling ``play_backwards()`` without arguments will also resume the animation backwards.
If the animation has been paused by ``stop(true)``, it will be resumed backwards. Calling ``play_backwards()`` without arguments will also resume the animation backwards.
+**Note:** This is the same as ``play`` in regards to process/update behavior.
+
+----
+
.. _class_AnimationPlayer_method_queue:
.. _class_AnimationPlayer_method_queue:
- void **queue** **(** :ref:`String<class_String>` name **)**
- void **queue** **(** :ref:`String<class_String>` name **)**
@@ -420,30 +486,40 @@ Queues an animation for playback once the current one is done.
**Note:** If a looped animation is currently playing, the queued animation will never play unless the looped animation is stopped somehow.
**Note:** If a looped animation is currently playing, the queued animation will never play unless the looped animation is stopped somehow.
Seeks the animation to the ``seconds`` point in time (in seconds). If ``update`` is ``true``, the animation updates too, otherwise it updates at process time. Events between the current frame and ``seconds`` are skipped.
Seeks the animation to the ``seconds`` point in time (in seconds). If ``update`` is ``true``, the animation updates too, otherwise it updates at process time. Events between the current frame and ``seconds`` are skipped.
- :ref:`Animation<class_Animation>` **animation_node_get_animation** **(** :ref:`String<class_String>` id **)** const
- :ref:`Animation<class_Animation>` **animation_node_get_animation** **(** :ref:`String<class_String>` id **)** const
Returns the :ref:`AnimationPlayer<class_AnimationPlayer>`'s :ref:`Animation<class_Animation>` bound to the ``AnimationTreePlayer``'s animation node with name ``id``.
Returns the :ref:`AnimationPlayer<class_AnimationPlayer>`'s :ref:`Animation<class_Animation>` bound to the ``AnimationTreePlayer``'s animation node with name ``id``.
- :ref:`String<class_String>` **animation_node_get_master_animation** **(** :ref:`String<class_String>` id **)** const
- :ref:`String<class_String>` **animation_node_get_master_animation** **(** :ref:`String<class_String>` id **)** const
Returns the name of the :ref:`master_player<class_AnimationTreePlayer_property_master_player>`'s :ref:`Animation<class_Animation>` bound to this animation node.
Returns the name of the :ref:`master_player<class_AnimationTreePlayer_property_master_player>`'s :ref:`Animation<class_Animation>` bound to this animation node.
Binds a new :ref:`Animation<class_Animation>` from the :ref:`master_player<class_AnimationTreePlayer_property_master_player>` to the ``AnimationTreePlayer``'s animation node with name ``id``.
Binds a new :ref:`Animation<class_Animation>` from the :ref:`master_player<class_AnimationTreePlayer_property_master_player>` to the ``AnimationTreePlayer``'s animation node with name ``id``.
If ``enable`` is ``true``, the animation node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
If ``enable`` is ``true``, the animation node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
Binds the :ref:`Animation<class_Animation>` named ``source`` from :ref:`master_player<class_AnimationTreePlayer_property_master_player>` to the animation node ``id``. Recalculates caches.
Binds the :ref:`Animation<class_Animation>` named ``source`` from :ref:`master_player<class_AnimationTreePlayer_property_master_player>` to the animation node ``id``. Recalculates caches.
If ``enable`` is ``true``, the blend2 node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
If ``enable`` is ``true``, the blend2 node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
If ``enable`` is ``true``, the oneshot node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
If ``enable`` is ``true``, the oneshot node with ID ``id`` turns off the track modifying the property at ``path``. The modified node's children continue to animate.
Emitted when another area exits, reporting which areas were overlapping.
Emitted when another area exits, reporting which areas were overlapping.
+----
+
.. _class_Area_signal_body_entered:
.. _class_Area_signal_body_entered:
- **body_entered** **(** :ref:`Node<class_Node>` body **)**
- **body_entered** **(** :ref:`Node<class_Node>` body **)**
@@ -115,6 +123,8 @@ Emitted when a physics body enters.
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+----
+
.. _class_Area_signal_body_exited:
.. _class_Area_signal_body_exited:
- **body_exited** **(** :ref:`Node<class_Node>` body **)**
- **body_exited** **(** :ref:`Node<class_Node>` body **)**
@@ -123,6 +133,8 @@ Emitted when a physics body exits.
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
@@ -131,6 +143,8 @@ Emitted when a physics body enters, reporting which shapes overlapped.
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
+----
+
.. _class_Area_property_audio_bus_name:
.. _class_Area_property_audio_bus_name:
- :ref:`String<class_String>` **audio_bus_name**
- :ref:`String<class_String>` **audio_bus_name**
@@ -202,6 +218,8 @@ The rate at which objects stop spinning in this area. Represents the angular vel
The name of the area's audio bus.
The name of the area's audio bus.
+----
+
.. _class_Area_property_audio_bus_override:
.. _class_Area_property_audio_bus_override:
- :ref:`bool<class_bool>` **audio_bus_override**
- :ref:`bool<class_bool>` **audio_bus_override**
@@ -216,6 +234,8 @@ The name of the area's audio bus.
If ``true``, the area's audio bus overrides the default audio bus.
If ``true``, the area's audio bus overrides the default audio bus.
+----
+
.. _class_Area_property_collision_layer:
.. _class_Area_property_collision_layer:
- :ref:`int<class_int>` **collision_layer**
- :ref:`int<class_int>` **collision_layer**
@@ -230,6 +250,8 @@ If ``true``, the area's audio bus overrides the default audio bus.
The area's physics layer(s). Collidable objects can exist in any of 32 different layers. A contact is detected if object A is in any of the layers that object B scans, or object B is in any layers that object A scans. See also :ref:`collision_mask<class_Area_property_collision_mask>`.
The area's physics layer(s). Collidable objects can exist in any of 32 different layers. A contact is detected if object A is in any of the layers that object B scans, or object B is in any layers that object A scans. See also :ref:`collision_mask<class_Area_property_collision_mask>`.
+----
+
.. _class_Area_property_collision_mask:
.. _class_Area_property_collision_mask:
- :ref:`int<class_int>` **collision_mask**
- :ref:`int<class_int>` **collision_mask**
@@ -244,6 +266,8 @@ The area's physics layer(s). Collidable objects can exist in any of 32 different
The physics layers this area scans to determine collision detection.
The physics layers this area scans to determine collision detection.
+----
+
.. _class_Area_property_gravity:
.. _class_Area_property_gravity:
- :ref:`float<class_float>` **gravity**
- :ref:`float<class_float>` **gravity**
@@ -258,6 +282,8 @@ The physics layers this area scans to determine collision detection.
The area's gravity intensity (ranges from -1024 to 1024). This value multiplies the gravity vector. This is useful to alter the force of gravity without altering its direction.
The area's gravity intensity (ranges from -1024 to 1024). This value multiplies the gravity vector. This is useful to alter the force of gravity without altering its direction.
@@ -272,6 +298,8 @@ The area's gravity intensity (ranges from -1024 to 1024). This value multiplies
The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
+----
+
.. _class_Area_property_gravity_point:
.. _class_Area_property_gravity_point:
- :ref:`bool<class_bool>` **gravity_point**
- :ref:`bool<class_bool>` **gravity_point**
@@ -286,6 +314,8 @@ The falloff factor for point gravity. The greater the value, the faster gravity
If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class_Area_property_gravity_vec>`). See also :ref:`space_override<class_Area_property_space_override>`.
If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class_Area_property_gravity_vec>`). See also :ref:`space_override<class_Area_property_space_override>`.
+----
+
.. _class_Area_property_gravity_vec:
.. _class_Area_property_gravity_vec:
- :ref:`Vector3<class_Vector3>` **gravity_vec**
- :ref:`Vector3<class_Vector3>` **gravity_vec**
@@ -300,6 +330,8 @@ If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class
The area's gravity vector (not normalized). If gravity is a point (see :ref:`gravity_point<class_Area_property_gravity_point>`), this will be the point of attraction.
The area's gravity vector (not normalized). If gravity is a point (see :ref:`gravity_point<class_Area_property_gravity_point>`), this will be the point of attraction.
+----
+
.. _class_Area_property_linear_damp:
.. _class_Area_property_linear_damp:
- :ref:`float<class_float>` **linear_damp**
- :ref:`float<class_float>` **linear_damp**
@@ -314,6 +346,8 @@ The area's gravity vector (not normalized). If gravity is a point (see :ref:`gra
The rate at which objects stop moving in this area. Represents the linear velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
The rate at which objects stop moving in this area. Represents the linear velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
+----
+
.. _class_Area_property_monitorable:
.. _class_Area_property_monitorable:
- :ref:`bool<class_bool>` **monitorable**
- :ref:`bool<class_bool>` **monitorable**
@@ -328,6 +362,8 @@ The rate at which objects stop moving in this area. Represents the linear veloci
If ``true``, other monitoring areas can detect this area.
If ``true``, other monitoring areas can detect this area.
+----
+
.. _class_Area_property_monitoring:
.. _class_Area_property_monitoring:
- :ref:`bool<class_bool>` **monitoring**
- :ref:`bool<class_bool>` **monitoring**
@@ -342,6 +378,8 @@ If ``true``, other monitoring areas can detect this area.
If ``true``, the area detects bodies or areas entering and exiting it.
If ``true``, the area detects bodies or areas entering and exiting it.
+----
+
.. _class_Area_property_priority:
.. _class_Area_property_priority:
- :ref:`float<class_float>` **priority**
- :ref:`float<class_float>` **priority**
@@ -356,6 +394,8 @@ If ``true``, the area detects bodies or areas entering and exiting it.
The area's priority. Higher priority areas are processed first.
The area's priority. Higher priority areas are processed first.
+----
+
.. _class_Area_property_reverb_bus_amount:
.. _class_Area_property_reverb_bus_amount:
- :ref:`float<class_float>` **reverb_bus_amount**
- :ref:`float<class_float>` **reverb_bus_amount**
@@ -370,6 +410,8 @@ The area's priority. Higher priority areas are processed first.
The degree to which this area applies reverb to its associated audio. Ranges from ``0`` to ``1`` with ``0.1`` precision.
The degree to which this area applies reverb to its associated audio. Ranges from ``0`` to ``1`` with ``0.1`` precision.
+----
+
.. _class_Area_property_reverb_bus_enable:
.. _class_Area_property_reverb_bus_enable:
- :ref:`bool<class_bool>` **reverb_bus_enable**
- :ref:`bool<class_bool>` **reverb_bus_enable**
@@ -384,6 +426,8 @@ The degree to which this area applies reverb to its associated audio. Ranges fro
If ``true``, the area applies reverb to its associated audio.
If ``true``, the area applies reverb to its associated audio.
+----
+
.. _class_Area_property_reverb_bus_name:
.. _class_Area_property_reverb_bus_name:
- :ref:`String<class_String>` **reverb_bus_name**
- :ref:`String<class_String>` **reverb_bus_name**
@@ -398,6 +442,8 @@ If ``true``, the area applies reverb to its associated audio.
The reverb bus name to use for this area's associated audio.
The reverb bus name to use for this area's associated audio.
Returns a list of intersecting ``Area``\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting ``Area``\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting :ref:`PhysicsBody<class_PhysicsBody>`\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting :ref:`PhysicsBody<class_PhysicsBody>`\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+----
+
.. _class_Area_method_overlaps_area:
.. _class_Area_method_overlaps_area:
- :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** const
- :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** const
@@ -461,6 +517,8 @@ If ``true``, the given area overlaps the Area.
**Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
**Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
+----
+
.. _class_Area_method_overlaps_body:
.. _class_Area_method_overlaps_body:
- :ref:`bool<class_bool>` **overlaps_body** **(** :ref:`Node<class_Node>` body **)** const
- :ref:`bool<class_bool>` **overlaps_body** **(** :ref:`Node<class_Node>` body **)** const
@@ -471,12 +529,16 @@ If ``true``, the given physics body overlaps the Area.
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody<class_PhysicsBody>` or a :ref:`GridMap<class_GridMap>` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+----
+
.. _class_Area_method_set_collision_layer_bit:
.. _class_Area_method_set_collision_layer_bit:
- void **set_collision_layer_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
- void **set_collision_layer_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
Set/clear individual bits on the layer mask. This simplifies editing this ``Area``'s layers.
Set/clear individual bits on the layer mask. This simplifies editing this ``Area``'s layers.
+----
+
.. _class_Area_method_set_collision_mask_bit:
.. _class_Area_method_set_collision_mask_bit:
- void **set_collision_mask_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
- void **set_collision_mask_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
Emitted when another area exits, reporting which shapes were overlapping.
Emitted when another area exits, reporting which shapes were overlapping.
+----
+
.. _class_Area2D_signal_body_entered:
.. _class_Area2D_signal_body_entered:
- **body_entered** **(** :ref:`Node<class_Node>` body **)**
- **body_entered** **(** :ref:`Node<class_Node>` body **)**
@@ -107,6 +115,8 @@ Emitted when a physics body enters.
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+----
+
.. _class_Area2D_signal_body_exited:
.. _class_Area2D_signal_body_exited:
- **body_exited** **(** :ref:`Node<class_Node>` body **)**
- **body_exited** **(** :ref:`Node<class_Node>` body **)**
@@ -115,6 +125,8 @@ Emitted when a physics body exits.
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
@@ -123,6 +135,8 @@ Emitted when a physics body enters, reporting which shapes overlapped.
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
The rate at which objects stop spinning in this area. Represents the angular velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
+----
+
.. _class_Area2D_property_audio_bus_name:
.. _class_Area2D_property_audio_bus_name:
- :ref:`String<class_String>` **audio_bus_name**
- :ref:`String<class_String>` **audio_bus_name**
@@ -194,6 +210,8 @@ The rate at which objects stop spinning in this area. Represents the angular vel
The name of the area's audio bus.
The name of the area's audio bus.
+----
+
.. _class_Area2D_property_audio_bus_override:
.. _class_Area2D_property_audio_bus_override:
- :ref:`bool<class_bool>` **audio_bus_override**
- :ref:`bool<class_bool>` **audio_bus_override**
@@ -208,6 +226,8 @@ The name of the area's audio bus.
If ``true``, the area's audio bus overrides the default audio bus.
If ``true``, the area's audio bus overrides the default audio bus.
+----
+
.. _class_Area2D_property_collision_layer:
.. _class_Area2D_property_collision_layer:
- :ref:`int<class_int>` **collision_layer**
- :ref:`int<class_int>` **collision_layer**
@@ -222,6 +242,8 @@ If ``true``, the area's audio bus overrides the default audio bus.
The area's physics layer(s). Collidable objects can exist in any of 32 different layers. A contact is detected if object A is in any of the layers that object B scans, or object B is in any layers that object A scans. See also :ref:`collision_mask<class_Area2D_property_collision_mask>`.
The area's physics layer(s). Collidable objects can exist in any of 32 different layers. A contact is detected if object A is in any of the layers that object B scans, or object B is in any layers that object A scans. See also :ref:`collision_mask<class_Area2D_property_collision_mask>`.
+----
+
.. _class_Area2D_property_collision_mask:
.. _class_Area2D_property_collision_mask:
- :ref:`int<class_int>` **collision_mask**
- :ref:`int<class_int>` **collision_mask**
@@ -236,6 +258,8 @@ The area's physics layer(s). Collidable objects can exist in any of 32 different
The physics layers this area scans to determine collision detection.
The physics layers this area scans to determine collision detection.
+----
+
.. _class_Area2D_property_gravity:
.. _class_Area2D_property_gravity:
- :ref:`float<class_float>` **gravity**
- :ref:`float<class_float>` **gravity**
@@ -250,6 +274,8 @@ The physics layers this area scans to determine collision detection.
The area's gravity intensity (ranges from -1024 to 1024). This value multiplies the gravity vector. This is useful to alter the force of gravity without altering its direction.
The area's gravity intensity (ranges from -1024 to 1024). This value multiplies the gravity vector. This is useful to alter the force of gravity without altering its direction.
@@ -264,6 +290,8 @@ The area's gravity intensity (ranges from -1024 to 1024). This value multiplies
The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
The falloff factor for point gravity. The greater the value, the faster gravity decreases with distance.
+----
+
.. _class_Area2D_property_gravity_point:
.. _class_Area2D_property_gravity_point:
- :ref:`bool<class_bool>` **gravity_point**
- :ref:`bool<class_bool>` **gravity_point**
@@ -278,6 +306,8 @@ The falloff factor for point gravity. The greater the value, the faster gravity
If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class_Area2D_property_gravity_vec>`). See also :ref:`space_override<class_Area2D_property_space_override>`.
If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class_Area2D_property_gravity_vec>`). See also :ref:`space_override<class_Area2D_property_space_override>`.
+----
+
.. _class_Area2D_property_gravity_vec:
.. _class_Area2D_property_gravity_vec:
- :ref:`Vector2<class_Vector2>` **gravity_vec**
- :ref:`Vector2<class_Vector2>` **gravity_vec**
@@ -292,6 +322,8 @@ If ``true``, gravity is calculated from a point (set via :ref:`gravity_vec<class
The area's gravity vector (not normalized). If gravity is a point (see :ref:`gravity_point<class_Area2D_property_gravity_point>`), this will be the point of attraction.
The area's gravity vector (not normalized). If gravity is a point (see :ref:`gravity_point<class_Area2D_property_gravity_point>`), this will be the point of attraction.
+----
+
.. _class_Area2D_property_linear_damp:
.. _class_Area2D_property_linear_damp:
- :ref:`float<class_float>` **linear_damp**
- :ref:`float<class_float>` **linear_damp**
@@ -306,6 +338,8 @@ The area's gravity vector (not normalized). If gravity is a point (see :ref:`gra
The rate at which objects stop moving in this area. Represents the linear velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
The rate at which objects stop moving in this area. Represents the linear velocity lost per second. Values range from ``0`` (no damping) to ``1`` (full damping).
+----
+
.. _class_Area2D_property_monitorable:
.. _class_Area2D_property_monitorable:
- :ref:`bool<class_bool>` **monitorable**
- :ref:`bool<class_bool>` **monitorable**
@@ -320,6 +354,8 @@ The rate at which objects stop moving in this area. Represents the linear veloci
If ``true``, other monitoring areas can detect this area.
If ``true``, other monitoring areas can detect this area.
+----
+
.. _class_Area2D_property_monitoring:
.. _class_Area2D_property_monitoring:
- :ref:`bool<class_bool>` **monitoring**
- :ref:`bool<class_bool>` **monitoring**
@@ -334,6 +370,8 @@ If ``true``, other monitoring areas can detect this area.
If ``true``, the area detects bodies or areas entering and exiting it.
If ``true``, the area detects bodies or areas entering and exiting it.
+----
+
.. _class_Area2D_property_priority:
.. _class_Area2D_property_priority:
- :ref:`float<class_float>` **priority**
- :ref:`float<class_float>` **priority**
@@ -348,6 +386,8 @@ If ``true``, the area detects bodies or areas entering and exiting it.
The area's priority. Higher priority areas are processed first.
The area's priority. Higher priority areas are processed first.
Returns a list of intersecting ``Area2D``\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting ``Area2D``\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting :ref:`PhysicsBody2D<class_PhysicsBody2D>`\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
Returns a list of intersecting :ref:`PhysicsBody2D<class_PhysicsBody2D>`\ s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
+----
+
.. _class_Area2D_method_overlaps_area:
.. _class_Area2D_method_overlaps_area:
- :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** const
- :ref:`bool<class_bool>` **overlaps_area** **(** :ref:`Node<class_Node>` area **)** const
@@ -397,6 +445,8 @@ If ``true``, the given area overlaps the Area2D.
**Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
**Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead.
+----
+
.. _class_Area2D_method_overlaps_body:
.. _class_Area2D_method_overlaps_body:
- :ref:`bool<class_bool>` **overlaps_body** **(** :ref:`Node<class_Node>` body **)** const
- :ref:`bool<class_bool>` **overlaps_body** **(** :ref:`Node<class_Node>` body **)** const
@@ -407,12 +457,16 @@ If ``true``, the given physics body overlaps the Area2D.
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
The ``body`` argument can either be a :ref:`PhysicsBody2D<class_PhysicsBody2D>` or a :ref:`TileMap<class_TileMap>` instance (while TileMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body).
+----
+
.. _class_Area2D_method_set_collision_layer_bit:
.. _class_Area2D_method_set_collision_layer_bit:
- void **set_collision_layer_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
- void **set_collision_layer_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
Set/clear individual bits on the layer mask. This makes getting an area in/out of only one layer easier.
Set/clear individual bits on the layer mask. This makes getting an area in/out of only one layer easier.
+----
+
.. _class_Area2D_method_set_collision_mask_bit:
.. _class_Area2D_method_set_collision_mask_bit:
- void **set_collision_mask_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
- void **set_collision_mask_bit** **(** :ref:`int<class_int>` bit, :ref:`bool<class_bool>` value **)**
@@ -194,36 +220,48 @@ Returns a copy of the array.
If ``deep`` is ``true``, a deep copy is performed: all nested arrays and dictionaries are duplicated and will not be shared with the original array. If ``false``, a shallow copy is made and references to the original nested arrays and dictionaries are kept, so that modifying a sub-array or dictionary in the copy will also impact those referenced in the source array.
If ``deep`` is ``true``, a deep copy is performed: all nested arrays and dictionaries are duplicated and will not be shared with the original array. If ``false``, a shallow copy is made and references to the original nested arrays and dictionaries are kept, so that modifying a sub-array or dictionary in the copy will also impact those referenced in the source array.
+----
+
.. _class_Array_method_empty:
.. _class_Array_method_empty:
- :ref:`bool<class_bool>` **empty** **(** **)**
- :ref:`bool<class_bool>` **empty** **(** **)**
Returns ``true`` if the array is empty.
Returns ``true`` if the array is empty.
+----
+
.. _class_Array_method_erase:
.. _class_Array_method_erase:
- void **erase** **(** :ref:`Variant<class_Variant>` value **)**
- void **erase** **(** :ref:`Variant<class_Variant>` value **)**
Removes the first occurrence of a value from the array.
Removes the first occurrence of a value from the array.
Searches the array in reverse order. Optionally, a start search index can be passed. If negative, the start index is considered relative to the end of the array.
Searches the array in reverse order. Optionally, a start search index can be passed. If negative, the start index is considered relative to the end of the array.
+----
+
.. _class_Array_method_shuffle:
.. _class_Array_method_shuffle:
- void **shuffle** **(** **)**
- void **shuffle** **(** **)**
Shuffles the array such that the items will have a random order. This method uses the global random number generator common to methods such as :ref:`@GDScript.randi<class_@GDScript_method_randi>`. Call :ref:`@GDScript.randomize<class_@GDScript_method_randomize>` to ensure that a new seed will be used each time if you want non-reproducible shuffling.
Shuffles the array such that the items will have a random order. This method uses the global random number generator common to methods such as :ref:`@GDScript.randi<class_@GDScript_method_randi>`. Call :ref:`@GDScript.randomize<class_@GDScript_method_randomize>` to ensure that a new seed will be used each time if you want non-reproducible shuffling.
Duplicates the subset described in the function and returns it in an array, deeply copying the array if ``deep`` is true. Lower and upper index are inclusive, with the ``step`` describing the change between indices while slicing.
Duplicates the subset described in the function and returns it in an array, deeply copying the array if ``deep`` is true. Lower and upper index are inclusive, with the ``step`` describing the change between indices while slicing.
+----
+
.. _class_Array_method_sort:
.. _class_Array_method_sort:
- void **sort** **(** **)**
- void **sort** **(** **)**
@@ -335,6 +405,8 @@ Sorts the array.
**Note:** strings are sorted in alphabetical, not natural order.
**Note:** strings are sorted in alphabetical, not natural order.
@@ -113,6 +113,8 @@ For triangles, the index array is interpreted as triples, referring to the verti
- **ARRAY_MAX** = **9** --- Represents the size of the :ref:`ArrayType<enum_ArrayMesh_ArrayType>` enum.
- **ARRAY_MAX** = **9** --- Represents the size of the :ref:`ArrayType<enum_ArrayMesh_ArrayType>` enum.
+----
+
.. _enum_ArrayMesh_ArrayFormat:
.. _enum_ArrayMesh_ArrayFormat:
.. _class_ArrayMesh_constant_ARRAY_FORMAT_VERTEX:
.. _class_ArrayMesh_constant_ARRAY_FORMAT_VERTEX:
@@ -202,6 +204,8 @@ Property Descriptions
| *Getter* | get_blend_shape_mode() |
| *Getter* | get_blend_shape_mode() |
+-----------+-----------------------------+
+-----------+-----------------------------+
+----
+
.. _class_ArrayMesh_property_custom_aabb:
.. _class_ArrayMesh_property_custom_aabb:
- :ref:`AABB<class_AABB>` **custom_aabb**
- :ref:`AABB<class_AABB>` **custom_aabb**
@@ -225,6 +229,8 @@ Method Descriptions
Adds name for a blend shape that will be added with :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`. Must be called before surface is added.
Adds name for a blend shape that will be added with :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`. Must be called before surface is added.
Returns the length in indices of the index array in the requested surface (see :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`).
Returns the length in indices of the index array in the requested surface (see :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`).
Returns the length in vertices of the vertex array in the requested surface (see :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`).
Returns the length in vertices of the vertex array in the requested surface (see :ref:`add_surface_from_arrays<class_ArrayMesh_method_add_surface_from_arrays>`).
If provided by the ARVR Interface, this returns a mesh object for the anchor. For an anchor, this can be a shape related to the object being tracked or it can be a mesh that provides topology related to the anchor and can be used to create shadows/reflections on surfaces or for generating collision shapes.
If provided by the ARVR Interface, this returns a mesh object for the anchor. For an anchor, this can be a shape related to the object being tracked or it can be a mesh that provides topology related to the anchor and can be used to create shadows/reflections on surfaces or for generating collision shapes.
@@ -99,6 +103,8 @@ For any other controller that the :ref:`ARVRServer<class_ARVRServer>` detects, w
When a controller is turned off, its slot is freed. This ensures controllers will keep the same ID even when controllers with lower IDs are turned off.
When a controller is turned off, its slot is freed. This ensures controllers will keep the same ID even when controllers with lower IDs are turned off.
+----
+
.. _class_ARVRController_property_rumble:
.. _class_ARVRController_property_rumble:
- :ref:`float<class_float>` **rumble**
- :ref:`float<class_float>` **rumble**
@@ -122,36 +128,48 @@ Method Descriptions
If active, returns the name of the associated controller if provided by the AR/VR SDK used.
If active, returns the name of the associated controller if provided by the AR/VR SDK used.
Returns the ID of the joystick object bound to this. Every controller tracked by the :ref:`ARVRServer<class_ARVRServer>` that has buttons and axis will also be registered as a joystick within Godot. This means that all the normal joystick tracking and input mapping will work for buttons and axis found on the AR/VR controllers. This ID is purely offered as information so you can link up the controller with its joystick entry.
Returns the ID of the joystick object bound to this. Every controller tracked by the :ref:`ARVRServer<class_ARVRServer>` that has buttons and axis will also be registered as a joystick within Godot. This means that all the normal joystick tracking and input mapping will work for buttons and axis found on the AR/VR controllers. This ID is purely offered as information so you can link up the controller with its joystick entry.
If provided by the :ref:`ARVRInterface<class_ARVRInterface>`, this returns a mesh associated with the controller. This can be used to visualize the controller.
If provided by the :ref:`ARVRInterface<class_ARVRInterface>`, this returns a mesh associated with the controller. This can be used to visualize the controller.
- **ARVR_EXTERNAL** = **8** --- This interface outputs to an external device, if the main viewport is used the on screen output is an unmodified buffer of either the left or right eye (stretched if the viewport size is not changed to the same aspect ratio of :ref:`get_render_targetsize<class_ARVRInterface_method_get_render_targetsize>`). Using a separate viewport node frees up the main viewport for other purposes.
- **ARVR_EXTERNAL** = **8** --- This interface outputs to an external device, if the main viewport is used the on screen output is an unmodified buffer of either the left or right eye (stretched if the viewport size is not changed to the same aspect ratio of :ref:`get_render_targetsize<class_ARVRInterface_method_get_render_targetsize>`). Using a separate viewport node frees up the main viewport for other purposes.
+----
+
.. _enum_ARVRInterface_Eyes:
.. _enum_ARVRInterface_Eyes:
.. _class_ARVRInterface_constant_EYE_MONO:
.. _class_ARVRInterface_constant_EYE_MONO:
@@ -95,6 +97,8 @@ enum **Eyes**:
- **EYE_RIGHT** = **2** --- Right eye output, this is mostly used internally when rendering the image for the right eye and obtaining positioning and projection information.
- **EYE_RIGHT** = **2** --- Right eye output, this is mostly used internally when rendering the image for the right eye and obtaining positioning and projection information.
If this is an AR interface that requires displaying a camera feed as the background, this method returns the feed ID in the :ref:`CameraServer<class_CameraServer>` for this interface.
If this is an AR interface that requires displaying a camera feed as the background, this method returns the feed ID in the :ref:`CameraServer<class_CameraServer>` for this interface.
If supported, returns the status of our tracking. This will allow you to provide feedback to the user whether there are issues with positional tracking.
If supported, returns the status of our tracking. This will allow you to provide feedback to the user whether there are issues with positional tracking.
@@ -218,12 +236,16 @@ If you do this for a platform that handles its own output (such as OpenVR) Godot
While currently not used you can activate additional interfaces, you may wish to do this if you want to track controllers from other platforms. However, at this point in time only one interface can render to an HMD.
While currently not used you can activate additional interfaces, you may wish to do this if you want to track controllers from other platforms. However, at this point in time only one interface can render to an HMD.
- **tracker_added** **(** :ref:`String<class_String>` tracker_name, :ref:`int<class_int>` type, :ref:`int<class_int>` id **)**
- **tracker_added** **(** :ref:`String<class_String>` tracker_name, :ref:`int<class_int>` type, :ref:`int<class_int>` id **)**
Emitted when a new tracker has been added. If you don't use a fixed number of controllers or if you're using :ref:`ARVRAnchor<class_ARVRAnchor>`\ s for an AR solution, it is important to react to this signal to add the appropriate :ref:`ARVRController<class_ARVRController>` or :ref:`ARVRAnchor<class_ARVRAnchor>` nodes related to this new tracker.
Emitted when a new tracker has been added. If you don't use a fixed number of controllers or if you're using :ref:`ARVRAnchor<class_ARVRAnchor>`\ s for an AR solution, it is important to react to this signal to add the appropriate :ref:`ARVRController<class_ARVRController>` or :ref:`ARVRAnchor<class_ARVRAnchor>` nodes related to this new tracker.
+----
+
.. _class_ARVRServer_signal_tracker_removed:
.. _class_ARVRServer_signal_tracker_removed:
- **tracker_removed** **(** :ref:`String<class_String>` tracker_name, :ref:`int<class_int>` type, :ref:`int<class_int>` id **)**
- **tracker_removed** **(** :ref:`String<class_String>` tracker_name, :ref:`int<class_int>` type, :ref:`int<class_int>` id **)**
@@ -114,6 +120,8 @@ enum **TrackerType**:
- **TRACKER_ANY** = **255** --- Used internally to select all trackers.
- **TRACKER_ANY** = **255** --- Used internally to select all trackers.
@@ -181,60 +191,82 @@ For this method to produce usable results, tracking information must be availabl
You should call this method after a few seconds have passed. For instance, when the user requests a realignment of the display holding a designated button on a controller for a short period of time, or when implementing a teleport mechanism.
You should call this method after a few seconds have passed. For instance, when the user requests a realignment of the display holding a designated button on a controller for a short period of time, or when implementing a teleport mechanism.
+----
+
.. _class_ARVRServer_method_find_interface:
.. _class_ARVRServer_method_find_interface:
- :ref:`ARVRInterface<class_ARVRInterface>` **find_interface** **(** :ref:`String<class_String>` name **)** const
- :ref:`ARVRInterface<class_ARVRInterface>` **find_interface** **(** :ref:`String<class_String>` name **)** const
Finds an interface by its name. For instance, if your project uses capabilities of an AR/VR platform, you can find the interface for that platform by name and initialize it.
Finds an interface by its name. For instance, if your project uses capabilities of an AR/VR platform, you can find the interface for that platform by name and initialize it.
Gets the number of interfaces currently registered with the AR/VR server. If your project supports multiple AR/VR platforms, you can look through the available interface, and either present the user with a selection or simply try to initialize each interface and use the first one that returns ``true``.
Gets the number of interfaces currently registered with the AR/VR server. If your project supports multiple AR/VR platforms, you can look through the available interface, and either present the user with a selection or simply try to initialize each interface and use the first one that returns ``true``.
Returns the ID of the closest point to ``to_position``, optionally taking disabled points into account. Returns -1 if there are no points in the points pool.
Returns the ID of the closest point to ``to_position``, optionally taking disabled points into account. Returns -1 if there are no points in the points pool.
@@ -190,12 +210,16 @@ Returns an array with the IDs of the points that form the path found by AStar be
If you change the 2nd point's weight to 3, then the result will be ``[1, 4, 3]`` instead, because now even though the distance is longer, it's "easier" to get through point 4 than through point 2.
If you change the 2nd point's weight to 3, then the result will be ``[1, 4, 3]`` instead, because now even though the distance is longer, it's "easier" to get through point 4 than through point 2.
Returns an array with the points that are in the path found by AStar between the given points. The array is ordered from the starting point to the ending point of the path.
Returns an array with the points that are in the path found by AStar between the given points. The array is ordered from the starting point to the ending point of the path.
+----
+
.. _class_AStar_method_get_point_position:
.. _class_AStar_method_get_point_position:
- :ref:`Vector3<class_Vector3>` **get_point_position** **(** :ref:`int<class_int>` id **)** const
- :ref:`Vector3<class_Vector3>` **get_point_position** **(** :ref:`int<class_int>` id **)** const
Returns the position of the point associated with the given ``id``.
Returns the position of the point associated with the given ``id``.
+----
+
.. _class_AStar_method_get_point_weight_scale:
.. _class_AStar_method_get_point_weight_scale:
- :ref:`float<class_float>` **get_point_weight_scale** **(** :ref:`int<class_int>` id **)** const
- :ref:`float<class_float>` **get_point_weight_scale** **(** :ref:`int<class_int>` id **)** const
Returns the weight scale of the point associated with the given ``id``.
Returns the weight scale of the point associated with the given ``id``.
Reserves space internally for ``num_nodes`` points, useful if you're adding a known large number of points at once, for a grid for instance. New capacity must be greater or equals to old capacity.
Reserves space internally for ``num_nodes`` points, useful if you're adding a known large number of points at once, for a grid for instance. New capacity must be greater or equals to old capacity.
Returns the ID of the closest point to ``to_position``, optionally taking disabled points into account. Returns -1 if there are no points in the points pool.
Returns the ID of the closest point to ``to_position``, optionally taking disabled points into account. Returns -1 if there are no points in the points pool.
@@ -172,12 +188,16 @@ Returns an array with the IDs of the points that form the path found by AStar2D
If you change the 2nd point's weight to 3, then the result will be ``[1, 4, 3]`` instead, because now even though the distance is longer, it's "easier" to get through point 4 than through point 2.
If you change the 2nd point's weight to 3, then the result will be ``[1, 4, 3]`` instead, because now even though the distance is longer, it's "easier" to get through point 4 than through point 2.
Returns an array with the points that are in the path found by AStar2D between the given points. The array is ordered from the starting point to the ending point of the path.
Returns an array with the points that are in the path found by AStar2D between the given points. The array is ordered from the starting point to the ending point of the path.
+----
+
.. _class_AStar2D_method_get_point_position:
.. _class_AStar2D_method_get_point_position:
- :ref:`Vector2<class_Vector2>` **get_point_position** **(** :ref:`int<class_int>` id **)** const
- :ref:`Vector2<class_Vector2>` **get_point_position** **(** :ref:`int<class_int>` id **)** const
Returns the position of the point associated with the given ``id``.
Returns the position of the point associated with the given ``id``.
+----
+
.. _class_AStar2D_method_get_point_weight_scale:
.. _class_AStar2D_method_get_point_weight_scale:
- :ref:`float<class_float>` **get_point_weight_scale** **(** :ref:`int<class_int>` id **)** const
- :ref:`float<class_float>` **get_point_weight_scale** **(** :ref:`int<class_int>` id **)** const
Returns the weight scale of the point associated with the given ``id``.
Returns the weight scale of the point associated with the given ``id``.
Reserves space internally for ``num_nodes`` points, useful if you're adding a known large number of points at once, for a grid for instance. New capacity must be greater or equals to old capacity.
Reserves space internally for ``num_nodes`` points, useful if you're adding a known large number of points at once, for a grid for instance. New capacity must be greater or equals to old capacity.
The texture that contains the atlas. Can be any :ref:`Texture<class_Texture>` subtype.
The texture that contains the atlas. Can be any :ref:`Texture<class_Texture>` subtype.
+----
+
.. _class_AtlasTexture_property_filter_clip:
.. _class_AtlasTexture_property_filter_clip:
- :ref:`bool<class_bool>` **filter_clip**
- :ref:`bool<class_bool>` **filter_clip**
@@ -67,6 +69,8 @@ The texture that contains the atlas. Can be any :ref:`Texture<class_Texture>` su
If ``true``, clips the area outside of the region to avoid bleeding of the surrounding texture pixels.
If ``true``, clips the area outside of the region to avoid bleeding of the surrounding texture pixels.
+----
+
.. _class_AtlasTexture_property_margin:
.. _class_AtlasTexture_property_margin:
- :ref:`Rect2<class_Rect2>` **margin**
- :ref:`Rect2<class_Rect2>` **margin**
@@ -81,6 +85,8 @@ If ``true``, clips the area outside of the region to avoid bleeding of the surro
The margin around the region. The :ref:`Rect2<class_Rect2>`'s :ref:`Rect2.size<class_Rect2_property_size>` parameter ("w" and "h" in the editor) resizes the texture so it fits within the margin.
The margin around the region. The :ref:`Rect2<class_Rect2>`'s :ref:`Rect2.size<class_Rect2_property_size>` parameter ("w" and "h" in the editor) resizes the texture so it fits within the margin.
Compressor's reaction time when the signal exceeds the threshold, in microseconds. Value can range from 20 to 2000.
Compressor's reaction time when the signal exceeds the threshold, in microseconds. Value can range from 20 to 2000.
+----
+
.. _class_AudioEffectCompressor_property_gain:
.. _class_AudioEffectCompressor_property_gain:
- :ref:`float<class_float>` **gain**
- :ref:`float<class_float>` **gain**
@@ -85,6 +87,8 @@ Compressor's reaction time when the signal exceeds the threshold, in microsecond
Gain applied to the output signal.
Gain applied to the output signal.
+----
+
.. _class_AudioEffectCompressor_property_mix:
.. _class_AudioEffectCompressor_property_mix:
- :ref:`float<class_float>` **mix**
- :ref:`float<class_float>` **mix**
@@ -99,6 +103,8 @@ Gain applied to the output signal.
Balance between original signal and effect signal. Value can range from 0 (totally dry) to 1 (totally wet).
Balance between original signal and effect signal. Value can range from 0 (totally dry) to 1 (totally wet).
+----
+
.. _class_AudioEffectCompressor_property_ratio:
.. _class_AudioEffectCompressor_property_ratio:
- :ref:`float<class_float>` **ratio**
- :ref:`float<class_float>` **ratio**
@@ -113,6 +119,8 @@ Balance between original signal and effect signal. Value can range from 0 (total
Amount of compression applied to the audio once it passes the threshold level. The higher the ratio, the more the loud parts of the audio will be compressed. Value can range from 1 to 48.
Amount of compression applied to the audio once it passes the threshold level. The higher the ratio, the more the loud parts of the audio will be compressed. Value can range from 1 to 48.
@@ -127,6 +135,8 @@ Amount of compression applied to the audio once it passes the threshold level. T
Compressor's delay time to stop reducing the signal after the signal level falls below the threshold, in milliseconds. Value can range from 20 to 2000.
Compressor's delay time to stop reducing the signal after the signal level falls below the threshold, in milliseconds. Value can range from 20 to 2000.
Governs how high the filter frequencies sweep. Low value will primarily affect bass frequencies. High value can sweep high into the treble. Value can range from 0.1 to 4.
Governs how high the filter frequencies sweep. Low value will primarily affect bass frequencies. High value can sweep high into the treble. Value can range from 0.1 to 4.
+----
+
.. _class_AudioEffectPhaser_property_feedback:
.. _class_AudioEffectPhaser_property_feedback:
- :ref:`float<class_float>` **feedback**
- :ref:`float<class_float>` **feedback**
@@ -71,6 +73,8 @@ Governs how high the filter frequencies sweep. Low value will primarily affect b
Output percent of modified sound. Value can range from 0.1 to 0.9.
Output percent of modified sound. Value can range from 0.1 to 0.9.
Defines how reflective the imaginary room's walls are. Value can range from 0 to 1.
Defines how reflective the imaginary room's walls are. Value can range from 0 to 1.
+----
+
.. _class_AudioEffectReverb_property_dry:
.. _class_AudioEffectReverb_property_dry:
- :ref:`float<class_float>` **dry**
- :ref:`float<class_float>` **dry**
@@ -77,6 +79,8 @@ Defines how reflective the imaginary room's walls are. Value can range from 0 to
Output percent of original sound. At 0, only modified sound is outputted. Value can range from 0 to 1.
Output percent of original sound. At 0, only modified sound is outputted. Value can range from 0 to 1.
+----
+
.. _class_AudioEffectReverb_property_hipass:
.. _class_AudioEffectReverb_property_hipass:
- :ref:`float<class_float>` **hipass**
- :ref:`float<class_float>` **hipass**
@@ -91,6 +95,8 @@ Output percent of original sound. At 0, only modified sound is outputted. Value
High-pass filter passes signals with a frequency higher than a certain cutoff frequency and attenuates signals with frequencies lower than the cutoff frequency. Value can range from 0 to 1.
High-pass filter passes signals with a frequency higher than a certain cutoff frequency and attenuates signals with frequencies lower than the cutoff frequency. Value can range from 0 to 1.
Attempts to start recording from the audio driver's capture device. On success, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Attempts to start recording from the audio driver's capture device. On success, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Attempts to stop recording from the audio driver's capture device. On success, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Attempts to stop recording from the audio driver's capture device. On success, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
@@ -205,6 +215,8 @@ Amount how much the filter affects the loudness, in dB.
Decides if audio should get quieter with distance linearly, quadratically, logarithmically, or not be affected by distance, effectively disabling attenuation.
Decides if audio should get quieter with distance linearly, quadratically, logarithmically, or not be affected by distance, effectively disabling attenuation.
+----
+
.. _class_AudioStreamPlayer3D_property_autoplay:
.. _class_AudioStreamPlayer3D_property_autoplay:
- :ref:`bool<class_bool>` **autoplay**
- :ref:`bool<class_bool>` **autoplay**
@@ -219,6 +231,8 @@ Decides if audio should get quieter with distance linearly, quadratically, logar
If ``true``, audio plays when added to scene tree.
If ``true``, audio plays when added to scene tree.
+----
+
.. _class_AudioStreamPlayer3D_property_bus:
.. _class_AudioStreamPlayer3D_property_bus:
- :ref:`String<class_String>` **bus**
- :ref:`String<class_String>` **bus**
@@ -233,6 +247,8 @@ If ``true``, audio plays when added to scene tree.
@@ -289,6 +311,8 @@ If ``true``, the audio should be dampened according to the direction of the soun
Dampens audio if camera is outside of :ref:`emission_angle_degrees<class_AudioStreamPlayer3D_property_emission_angle_degrees>` and :ref:`emission_angle_enabled<class_AudioStreamPlayer3D_property_emission_angle_enabled>` is set by this factor, in dB.
Dampens audio if camera is outside of :ref:`emission_angle_degrees<class_AudioStreamPlayer3D_property_emission_angle_degrees>` and :ref:`emission_angle_enabled<class_AudioStreamPlayer3D_property_emission_angle_enabled>` is set by this factor, in dB.
+----
+
.. _class_AudioStreamPlayer3D_property_max_db:
.. _class_AudioStreamPlayer3D_property_max_db:
- :ref:`float<class_float>` **max_db**
- :ref:`float<class_float>` **max_db**
@@ -303,6 +327,8 @@ Dampens audio if camera is outside of :ref:`emission_angle_degrees<class_AudioSt
Sets the absolute maximum of the soundlevel, in dB.
Sets the absolute maximum of the soundlevel, in dB.
@@ -317,6 +343,8 @@ Sets the absolute maximum of the soundlevel, in dB.
Sets the distance from which the :ref:`out_of_range_mode<class_AudioStreamPlayer3D_property_out_of_range_mode>` takes effect. Has no effect if set to 0.
Sets the distance from which the :ref:`out_of_range_mode<class_AudioStreamPlayer3D_property_out_of_range_mode>` takes effect. Has no effect if set to 0.
- **BAKE_MODE_RAY_TRACE** = **1** --- More precise bake mode but can take considerably longer to bake.
- **BAKE_MODE_RAY_TRACE** = **1** --- More precise bake mode but can take considerably longer to bake.
+----
+
.. _enum_BakedLightmap_BakeError:
.. _enum_BakedLightmap_BakeError:
.. _class_BakedLightmap_constant_BAKE_ERROR_OK:
.. _class_BakedLightmap_constant_BAKE_ERROR_OK:
@@ -136,6 +140,8 @@ Property Descriptions
Grid subdivision size for lightmapper calculation. The default value will work for most cases. Increase for better lighting on small details or if your scene is very large.
Grid subdivision size for lightmapper calculation. The default value will work for most cases. Increase for better lighting on small details or if your scene is very large.
@@ -150,6 +156,8 @@ Grid subdivision size for lightmapper calculation. The default value will work f
If a :ref:`Mesh.lightmap_size_hint<class_Mesh_property_lightmap_size_hint>` isn't specified, the lightmap baker will dynamically set the lightmap size using this value. This value is measured in texels per world unit. The maximum lightmap texture size is 4096x4096.
If a :ref:`Mesh.lightmap_size_hint<class_Mesh_property_lightmap_size_hint>` isn't specified, the lightmap baker will dynamically set the lightmap size using this value. This value is measured in texels per world unit. The maximum lightmap texture size is 4096x4096.
+----
+
.. _class_BakedLightmap_property_bake_energy:
.. _class_BakedLightmap_property_bake_energy:
- :ref:`float<class_float>` **bake_energy**
- :ref:`float<class_float>` **bake_energy**
@@ -164,6 +172,8 @@ If a :ref:`Mesh.lightmap_size_hint<class_Mesh_property_lightmap_size_hint>` isn'
Multiplies the light sources' intensity by this value. For instance, if the value is set to 2, lights will be twice as bright. If the value is set to 0.5, lights will be half as bright.
Multiplies the light sources' intensity by this value. For instance, if the value is set to 2, lights will be twice as bright. If the value is set to 0.5, lights will be half as bright.
+----
+
.. _class_BakedLightmap_property_bake_extents:
.. _class_BakedLightmap_property_bake_extents:
- :ref:`Vector3<class_Vector3>` **bake_extents**
- :ref:`Vector3<class_Vector3>` **bake_extents**
@@ -178,6 +188,8 @@ Multiplies the light sources' intensity by this value. For instance, if the valu
The size of the affected area.
The size of the affected area.
+----
+
.. _class_BakedLightmap_property_bake_hdr:
.. _class_BakedLightmap_property_bake_hdr:
- :ref:`bool<class_bool>` **bake_hdr**
- :ref:`bool<class_bool>` **bake_hdr**
@@ -192,6 +204,8 @@ The size of the affected area.
If ``true``, the lightmap can capture light values greater than ``1.0``. Turning this off will result in a smaller file size.
If ``true``, the lightmap can capture light values greater than ``1.0``. Turning this off will result in a smaller file size.
@@ -220,6 +236,8 @@ Lightmapping mode. See :ref:`BakeMode<enum_BakedLightmap_BakeMode>`.
Defines how far the light will travel before it is no longer effective. The higher the number, the farther the light will travel. For instance, if the value is set to 2, the light will go twice as far. If the value is set to 0.5, the light will only go half as far.
Defines how far the light will travel before it is no longer effective. The higher the number, the farther the light will travel. For instance, if the value is set to 2, the light will go twice as far. If the value is set to 0.5, the light will only go half as far.
@@ -248,6 +268,8 @@ Three quality modes are available. Higher quality requires more rendering time.
Grid size used for real-time capture information on dynamic objects. Cannot be larger than :ref:`bake_cell_size<class_BakedLightmap_property_bake_cell_size>`.
Grid size used for real-time capture information on dynamic objects. Cannot be larger than :ref:`bake_cell_size<class_BakedLightmap_property_bake_cell_size>`.
+----
+
.. _class_BakedLightmap_property_image_path:
.. _class_BakedLightmap_property_image_path:
- :ref:`String<class_String>` **image_path**
- :ref:`String<class_String>` **image_path**
@@ -262,6 +284,8 @@ Grid size used for real-time capture information on dynamic objects. Cannot be l
Emitted when the button is toggled or pressed. This is on :ref:`button_down<class_BaseButton_signal_button_down>` if :ref:`action_mode<class_BaseButton_property_action_mode>` is :ref:`ACTION_MODE_BUTTON_PRESS<class_BaseButton_constant_ACTION_MODE_BUTTON_PRESS>` and on :ref:`button_up<class_BaseButton_signal_button_up>` otherwise.
Emitted when the button is toggled or pressed. This is on :ref:`button_down<class_BaseButton_signal_button_down>` if :ref:`action_mode<class_BaseButton_property_action_mode>` is :ref:`ACTION_MODE_BUTTON_PRESS<class_BaseButton_constant_ACTION_MODE_BUTTON_PRESS>` and on :ref:`button_up<class_BaseButton_signal_button_up>` otherwise.
@@ -192,6 +206,8 @@ If ``true``, the button is in disabled state and can't be clicked or toggled.
Focus access mode to use when switching between enabled/disabled (see :ref:`Control.focus_mode<class_Control_property_focus_mode>` and :ref:`disabled<class_BaseButton_property_disabled>`).
Focus access mode to use when switching between enabled/disabled (see :ref:`Control.focus_mode<class_Control_property_focus_mode>` and :ref:`disabled<class_BaseButton_property_disabled>`).
+----
+
.. _class_BaseButton_property_group:
.. _class_BaseButton_property_group:
- :ref:`ButtonGroup<class_ButtonGroup>` **group**
- :ref:`ButtonGroup<class_ButtonGroup>` **group**
@@ -204,6 +220,8 @@ Focus access mode to use when switching between enabled/disabled (see :ref:`Cont
:ref:`ButtonGroup<class_ButtonGroup>` associated to the button.
:ref:`ButtonGroup<class_ButtonGroup>` associated to the button.
Returns the visual state used to draw the button. This is useful mainly when implementing your own draw code by either overriding _draw() or connecting to "draw" signal. The visual state of the button is defined by the ``DRAW_*`` enum.
Returns the visual state used to draw the button. This is useful mainly when implementing your own draw code by either overriding _draw() or connecting to "draw" signal. The visual state of the button is defined by the ``DRAW_*`` enum.
Create a rotation matrix from the given quaternion.
Create a rotation matrix from the given quaternion.
+----
+
- :ref:`Basis<class_Basis>` **Basis** **(** :ref:`Vector3<class_Vector3>` from **)**
- :ref:`Basis<class_Basis>` **Basis** **(** :ref:`Vector3<class_Vector3>` from **)**
Create a rotation matrix (in the YXZ convention: first Z, then X, and Y last) from the specified Euler angles, given in the vector format as (X angle, Y angle, Z angle).
Create a rotation matrix (in the YXZ convention: first Z, then X, and Y last) from the specified Euler angles, given in the vector format as (X angle, Y angle, Z angle).
Assuming that the matrix is a proper rotation matrix (orthonormal matrix with determinant +1), return Euler angles (in the YXZ convention: first Z, then X, and Y last). Returned vector contains the rotation angles in the format (X angle, Y angle, Z angle).
Assuming that the matrix is a proper rotation matrix (orthonormal matrix with determinant +1), return Euler angles (in the YXZ convention: first Z, then X, and Y last). Returned vector contains the rotation angles in the format (X angle, Y angle, Z angle).
This function considers a discretization of rotations into 24 points on unit sphere, lying along the vectors (x,y,z) with each component being either -1,0 or 1, and returns the index of the point best representing the orientation of the object. It is mainly used by the grid map editor. For further details, refer to Godot source code.
This function considers a discretization of rotations into 24 points on unit sphere, lying along the vectors (x,y,z) with each component being either -1,0 or 1, and returns the index of the point best representing the orientation of the object. It is mainly used by the grid map editor. For further details, refer to Godot source code.
Returns the orthonormalized version of the matrix (useful to call from time to time to avoid rounding error for orthogonal matrices). This performs a Gram-Schmidt orthonormalization on the basis of the matrix.
Returns the orthonormalized version of the matrix (useful to call from time to time to avoid rounding error for orthogonal matrices). This performs a Gram-Schmidt orthonormalization on the basis of the matrix.
Creates a bitmap that matches the given image dimensions, every element of the bitmap is set to ``false`` if the alpha value of the image at that position is equal to ``threshold`` or less, and ``true`` in other case.
Creates a bitmap that matches the given image dimensions, every element of the bitmap is set to ``false`` if the alpha value of the image at that position is equal to ``threshold`` or less, and ``true`` in other case.
+----
+
.. _class_BitMap_method_get_bit:
.. _class_BitMap_method_get_bit:
- :ref:`bool<class_bool>` **get_bit** **(** :ref:`Vector2<class_Vector2>` position **)** const
- :ref:`bool<class_bool>` **get_bit** **(** :ref:`Vector2<class_Vector2>` position **)** const
@@ -102,6 +106,8 @@ If ``true``, distance field hint is enabled.
The fallback font.
The fallback font.
+----
+
.. _class_BitmapFont_property_height:
.. _class_BitmapFont_property_height:
- :ref:`float<class_float>` **height**
- :ref:`float<class_float>` **height**
@@ -125,48 +131,64 @@ Method Descriptions
Adds a character to the font, where ``character`` is the Unicode value, ``texture`` is the texture index, ``rect`` is the region in the texture (in pixels!), ``align`` is the (optional) alignment for the character and ``advance`` is the (optional) advance.
Adds a character to the font, where ``character`` is the Unicode value, ``texture`` is the texture index, ``rect`` is the region in the texture (in pixels!), ``align`` is the (optional) alignment for the character and ``advance`` is the (optional) advance.
Adds a kerning pair to the ``BitmapFont`` as a difference. Kerning pairs are special cases where a typeface advance is determined by the next character.
Adds a kerning pair to the ``BitmapFont`` as a difference. Kerning pairs are special cases where a typeface advance is determined by the next character.
Cast an :ref:`int<class_int>` value to a boolean value, this method will return ``true`` if called with an integer value different to 0 and ``false`` in other case.
Cast an :ref:`int<class_int>` value to a boolean value, this method will return ``true`` if called with an integer value different to 0 and ``false`` in other case.
+----
+
- :ref:`bool<class_bool>` **bool** **(** :ref:`float<class_float>` from **)**
- :ref:`bool<class_bool>` **bool** **(** :ref:`float<class_float>` from **)**
Cast a :ref:`float<class_float>` value to a boolean value, this method will return ``true`` if called with a floating-point value different to 0 and ``false`` in other case.
Cast a :ref:`float<class_float>` value to a boolean value, this method will return ``true`` if called with a floating-point value different to 0 and ``false`` in other case.
+----
+
- :ref:`bool<class_bool>` **bool** **(** :ref:`String<class_String>` from **)**
- :ref:`bool<class_bool>` **bool** **(** :ref:`String<class_String>` from **)**
Cast a :ref:`String<class_String>` value to a boolean value, this method will return ``true`` if called with a non-empty string and ``false`` in other case. Examples: ``bool("False")`` returns ``true``, ``bool("")`` returns ``false``.
Cast a :ref:`String<class_String>` value to a boolean value, this method will return ``true`` if called with a non-empty string and ``false`` in other case. Examples: ``bool("False")`` returns ``true``, ``bool("")`` returns ``false``.
Text alignment policy for the button's text, use one of the ``ALIGN_*`` constants.
Text alignment policy for the button's text, use one of the ``ALIGN_*`` constants.
+----
+
.. _class_Button_property_clip_text:
.. _class_Button_property_clip_text:
- :ref:`bool<class_bool>` **clip_text**
- :ref:`bool<class_bool>` **clip_text**
@@ -119,6 +121,8 @@ Text alignment policy for the button's text, use one of the ``ALIGN_*`` constant
When this property is enabled, text that is too large to fit the button is clipped, when disabled the Button will always be wide enough to hold the text.
When this property is enabled, text that is too large to fit the button is clipped, when disabled the Button will always be wide enough to hold the text.
+----
+
.. _class_Button_property_expand_icon:
.. _class_Button_property_expand_icon:
- :ref:`bool<class_bool>` **expand_icon**
- :ref:`bool<class_bool>` **expand_icon**
@@ -133,6 +137,8 @@ When this property is enabled, text that is too large to fit the button is clipp
When enabled, the button's icon will expand/shrink to fit the button's size while keeping its aspect.
When enabled, the button's icon will expand/shrink to fit the button's size while keeping its aspect.
+----
+
.. _class_Button_property_flat:
.. _class_Button_property_flat:
- :ref:`bool<class_bool>` **flat**
- :ref:`bool<class_bool>` **flat**
@@ -147,6 +153,8 @@ When enabled, the button's icon will expand/shrink to fit the button's size whil
Returns an :ref:`Array<class_Array>` of :ref:`Button<class_Button>`\ s who have this as their ``ButtonGroup`` (see :ref:`BaseButton.group<class_BaseButton_property_group>`).
Returns an :ref:`Array<class_Array>` of :ref:`Button<class_Button>`\ s who have this as their ``ButtonGroup`` (see :ref:`BaseButton.group<class_BaseButton_property_group>`).
- **PROJECTION_FRUSTUM** = **2** --- Frustum projection. This mode allows adjusting :ref:`frustum_offset<class_Camera_property_frustum_offset>` to create "tilted frustum" effects.
- **PROJECTION_FRUSTUM** = **2** --- Frustum projection. This mode allows adjusting :ref:`frustum_offset<class_Camera_property_frustum_offset>` to create "tilted frustum" effects.
+----
+
.. _enum_Camera_KeepAspect:
.. _enum_Camera_KeepAspect:
.. _class_Camera_constant_KEEP_WIDTH:
.. _class_Camera_constant_KEEP_WIDTH:
@@ -119,6 +121,8 @@ enum **KeepAspect**:
- **KEEP_HEIGHT** = **1** --- Preserves the vertical aspect ratio; also known as Hor+ scaling. This is usually the best option for projects running in landscape mode, as wider aspect ratios will automatically benefit from a wider horizontal FOV.
- **KEEP_HEIGHT** = **1** --- Preserves the vertical aspect ratio; also known as Hor+ scaling. This is usually the best option for projects running in landscape mode, as wider aspect ratios will automatically benefit from a wider horizontal FOV.
@@ -185,6 +193,8 @@ If ``true``, the ancestor :ref:`Viewport<class_Viewport>` is currently using thi
If not :ref:`DOPPLER_TRACKING_DISABLED<class_Camera_constant_DOPPLER_TRACKING_DISABLED>`, this camera will simulate the Doppler effect for objects changed in particular ``_process`` methods. See :ref:`DopplerTracking<enum_Camera_DopplerTracking>` for possible values.
If not :ref:`DOPPLER_TRACKING_DISABLED<class_Camera_constant_DOPPLER_TRACKING_DISABLED>`, this camera will simulate the Doppler effect for objects changed in particular ``_process`` methods. See :ref:`DopplerTracking<enum_Camera_DopplerTracking>` for possible values.
@@ -197,6 +207,8 @@ If not :ref:`DOPPLER_TRACKING_DISABLED<class_Camera_constant_DOPPLER_TRACKING_DI
The :ref:`Environment<class_Environment>` to use for this camera.
The :ref:`Environment<class_Environment>` to use for this camera.
+----
+
.. _class_Camera_property_far:
.. _class_Camera_property_far:
- :ref:`float<class_float>` **far**
- :ref:`float<class_float>` **far**
@@ -211,6 +223,8 @@ The :ref:`Environment<class_Environment>` to use for this camera.
The distance to the far culling boundary for this camera relative to its local Z axis.
The distance to the far culling boundary for this camera relative to its local Z axis.
+----
+
.. _class_Camera_property_fov:
.. _class_Camera_property_fov:
- :ref:`float<class_float>` **fov**
- :ref:`float<class_float>` **fov**
@@ -225,6 +239,8 @@ The distance to the far culling boundary for this camera relative to its local Z
The camera's field of view angle (in degrees). Only applicable in perspective mode. Since :ref:`keep_aspect<class_Camera_property_keep_aspect>` locks one axis, ``fov`` sets the other axis' field of view angle.
The camera's field of view angle (in degrees). Only applicable in perspective mode. Since :ref:`keep_aspect<class_Camera_property_keep_aspect>` locks one axis, ``fov`` sets the other axis' field of view angle.
@@ -265,6 +285,8 @@ The horizontal (X) offset of the camera viewport.
The axis to lock during :ref:`fov<class_Camera_property_fov>`/:ref:`size<class_Camera_property_size>` adjustments. Can be either :ref:`KEEP_WIDTH<class_Camera_constant_KEEP_WIDTH>` or :ref:`KEEP_HEIGHT<class_Camera_constant_KEEP_HEIGHT>`.
The axis to lock during :ref:`fov<class_Camera_property_fov>`/:ref:`size<class_Camera_property_size>` adjustments. Can be either :ref:`KEEP_WIDTH<class_Camera_constant_KEEP_WIDTH>` or :ref:`KEEP_HEIGHT<class_Camera_constant_KEEP_HEIGHT>`.
+----
+
.. _class_Camera_property_near:
.. _class_Camera_property_near:
- :ref:`float<class_float>` **near**
- :ref:`float<class_float>` **near**
@@ -279,6 +301,8 @@ The axis to lock during :ref:`fov<class_Camera_property_fov>`/:ref:`size<class_C
The distance to the near culling boundary for this camera relative to its local Z axis.
The distance to the near culling boundary for this camera relative to its local Z axis.
@@ -293,6 +317,8 @@ The distance to the near culling boundary for this camera relative to its local
The camera's projection mode. In :ref:`PROJECTION_PERSPECTIVE<class_Camera_constant_PROJECTION_PERSPECTIVE>` mode, objects' Z distance from the camera's local space scales their perceived size.
The camera's projection mode. In :ref:`PROJECTION_PERSPECTIVE<class_Camera_constant_PROJECTION_PERSPECTIVE>` mode, objects' Z distance from the camera's local space scales their perceived size.
+----
+
.. _class_Camera_property_size:
.. _class_Camera_property_size:
- :ref:`float<class_float>` **size**
- :ref:`float<class_float>` **size**
@@ -307,6 +333,8 @@ The camera's projection mode. In :ref:`PROJECTION_PERSPECTIVE<class_Camera_const
The camera's size measured as 1/2 the width or height. Only applicable in orthogonal mode. Since :ref:`keep_aspect<class_Camera_property_keep_aspect>` locks on axis, ``size`` sets the other axis' size length.
The camera's size measured as 1/2 the width or height. Only applicable in orthogonal mode. Since :ref:`keep_aspect<class_Camera_property_keep_aspect>` locks on axis, ``size`` sets the other axis' size length.
+----
+
.. _class_Camera_property_v_offset:
.. _class_Camera_property_v_offset:
- :ref:`float<class_float>` **v_offset**
- :ref:`float<class_float>` **v_offset**
@@ -330,26 +358,36 @@ Method Descriptions
If this is the current camera, remove it from being current. If ``enable_next`` is ``true``, request to make the next camera current, if any.
If this is the current camera, remove it from being current. If ``enable_next`` is ``true``, request to make the next camera current, if any.
Gets the camera transform. Subclassed cameras such as :ref:`InterpolatedCamera<class_InterpolatedCamera>` may provide different transforms than the :ref:`Node<class_Node>` transform.
Gets the camera transform. Subclassed cameras such as :ref:`InterpolatedCamera<class_InterpolatedCamera>` may provide different transforms than the :ref:`Node<class_Node>` transform.
@@ -358,56 +396,76 @@ Returns ``true`` if the given position is behind the camera.
**Note:** A position which returns ``false`` may still be outside the camera's field of view.
**Note:** A position which returns ``false`` may still be outside the camera's field of view.
+----
+
.. _class_Camera_method_make_current:
.. _class_Camera_method_make_current:
- void **make_current** **(** **)**
- void **make_current** **(** **)**
Makes this camera the current camera for the :ref:`Viewport<class_Viewport>` (see class description). If the camera node is outside the scene tree, it will attempt to become current once it's added.
Makes this camera the current camera for the :ref:`Viewport<class_Viewport>` (see class description). If the camera node is outside the scene tree, it will attempt to become current once it's added.
Returns a normal vector from the screen point location directed along the camera. Orthogonal cameras are normalized. Perspective cameras account for perspective, screen width/height, etc.
Returns a normal vector from the screen point location directed along the camera. Orthogonal cameras are normalized. Perspective cameras account for perspective, screen width/height, etc.
Returns the 3D point in worldspace that maps to the given 2D coordinate in the :ref:`Viewport<class_Viewport>` rectangle on a plane that is the given distance into the scene away from the camera.
Returns the 3D point in worldspace that maps to the given 2D coordinate in the :ref:`Viewport<class_Viewport>` rectangle on a plane that is the given distance into the scene away from the camera.
Returns a normal vector in worldspace, that is the result of projecting a point on the :ref:`Viewport<class_Viewport>` rectangle by the camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking.
Returns a normal vector in worldspace, that is the result of projecting a point on the :ref:`Viewport<class_Viewport>` rectangle by the camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking.
Returns a 3D position in worldspace, that is the result of projecting a point on the :ref:`Viewport<class_Viewport>` rectangle by the camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking.
Returns a 3D position in worldspace, that is the result of projecting a point on the :ref:`Viewport<class_Viewport>` rectangle by the camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking.
Sets the camera projection to orthogonal mode, by specifying a width and the ``near`` and ``far`` clip planes in worldspace units. (As a hint, 2D games often use this projection, with values specified in pixels)
Sets the camera projection to orthogonal mode, by specifying a width and the ``near`` and ``far`` clip planes in worldspace units. (As a hint, 2D games often use this projection, with values specified in pixels)
Sets the camera projection to perspective mode, by specifying a ``fov`` angle in degrees (FOV means Field of View), and the ``near`` and ``far`` clip planes in world-space units.
Sets the camera projection to perspective mode, by specifying a ``fov`` angle in degrees (FOV means Field of View), and the ``near`` and ``far`` clip planes in world-space units.
The Camera2D's anchor point. See ``ANCHOR_MODE_*`` constants.
The Camera2D's anchor point. See ``ANCHOR_MODE_*`` constants.
+----
+
.. _class_Camera2D_property_current:
.. _class_Camera2D_property_current:
- :ref:`bool<class_bool>` **current**
- :ref:`bool<class_bool>` **current**
@@ -163,6 +167,8 @@ The Camera2D's anchor point. See ``ANCHOR_MODE_*`` constants.
If ``true``, the camera is the active camera for the current scene. Only one camera can be current, so setting a different camera ``current`` will disable this one.
If ``true``, the camera is the active camera for the current scene. Only one camera can be current, so setting a different camera ``current`` will disable this one.
+----
+
.. _class_Camera2D_property_custom_viewport:
.. _class_Camera2D_property_custom_viewport:
- :ref:`Node<class_Node>` **custom_viewport**
- :ref:`Node<class_Node>` **custom_viewport**
@@ -175,6 +181,8 @@ If ``true``, the camera is the active camera for the current scene. Only one cam
The custom :ref:`Viewport<class_Viewport>` node attached to the ``Camera2D``. If ``null`` or not a :ref:`Viewport<class_Viewport>`, uses the default viewport instead.
The custom :ref:`Viewport<class_Viewport>` node attached to the ``Camera2D``. If ``null`` or not a :ref:`Viewport<class_Viewport>`, uses the default viewport instead.
@@ -273,6 +293,8 @@ If ``true``, the camera only moves when reaching the vertical drag margins. If `
If ``true``, draws the camera's drag margin rectangle in the editor.
If ``true``, draws the camera's drag margin rectangle in the editor.
+----
+
.. _class_Camera2D_property_editor_draw_limits:
.. _class_Camera2D_property_editor_draw_limits:
- :ref:`bool<class_bool>` **editor_draw_limits**
- :ref:`bool<class_bool>` **editor_draw_limits**
@@ -287,6 +309,8 @@ If ``true``, draws the camera's drag margin rectangle in the editor.
If ``true``, draws the camera's limits rectangle in the editor.
If ``true``, draws the camera's limits rectangle in the editor.
+----
+
.. _class_Camera2D_property_editor_draw_screen:
.. _class_Camera2D_property_editor_draw_screen:
- :ref:`bool<class_bool>` **editor_draw_screen**
- :ref:`bool<class_bool>` **editor_draw_screen**
@@ -301,6 +325,8 @@ If ``true``, draws the camera's limits rectangle in the editor.
If ``true``, draws the camera's screen rectangle in the editor.
If ``true``, draws the camera's screen rectangle in the editor.
+----
+
.. _class_Camera2D_property_limit_bottom:
.. _class_Camera2D_property_limit_bottom:
- :ref:`int<class_int>` **limit_bottom**
- :ref:`int<class_int>` **limit_bottom**
@@ -315,6 +341,8 @@ If ``true``, draws the camera's screen rectangle in the editor.
Bottom scroll limit in pixels. The camera stops moving when reaching this value.
Bottom scroll limit in pixels. The camera stops moving when reaching this value.
+----
+
.. _class_Camera2D_property_limit_left:
.. _class_Camera2D_property_limit_left:
- :ref:`int<class_int>` **limit_left**
- :ref:`int<class_int>` **limit_left**
@@ -329,6 +357,8 @@ Bottom scroll limit in pixels. The camera stops moving when reaching this value.
Left scroll limit in pixels. The camera stops moving when reaching this value.
Left scroll limit in pixels. The camera stops moving when reaching this value.
+----
+
.. _class_Camera2D_property_limit_right:
.. _class_Camera2D_property_limit_right:
- :ref:`int<class_int>` **limit_right**
- :ref:`int<class_int>` **limit_right**
@@ -343,6 +373,8 @@ Left scroll limit in pixels. The camera stops moving when reaching this value.
Right scroll limit in pixels. The camera stops moving when reaching this value.
Right scroll limit in pixels. The camera stops moving when reaching this value.
+----
+
.. _class_Camera2D_property_limit_smoothed:
.. _class_Camera2D_property_limit_smoothed:
- :ref:`bool<class_bool>` **limit_smoothed**
- :ref:`bool<class_bool>` **limit_smoothed**
@@ -357,6 +389,8 @@ Right scroll limit in pixels. The camera stops moving when reaching this value.
If ``true``, the camera smoothly stops when reaches its limits.
If ``true``, the camera smoothly stops when reaches its limits.
+----
+
.. _class_Camera2D_property_limit_top:
.. _class_Camera2D_property_limit_top:
- :ref:`int<class_int>` **limit_top**
- :ref:`int<class_int>` **limit_top**
@@ -371,6 +405,8 @@ If ``true``, the camera smoothly stops when reaches its limits.
Top scroll limit in pixels. The camera stops moving when reaching this value.
Top scroll limit in pixels. The camera stops moving when reaching this value.
+----
+
.. _class_Camera2D_property_offset:
.. _class_Camera2D_property_offset:
- :ref:`Vector2<class_Vector2>` **offset**
- :ref:`Vector2<class_Vector2>` **offset**
@@ -385,6 +421,8 @@ Top scroll limit in pixels. The camera stops moving when reaching this value.
The camera's offset, useful for looking around or camera shake animations.
The camera's offset, useful for looking around or camera shake animations.
+----
+
.. _class_Camera2D_property_offset_h:
.. _class_Camera2D_property_offset_h:
- :ref:`float<class_float>` **offset_h**
- :ref:`float<class_float>` **offset_h**
@@ -401,6 +439,8 @@ The horizontal offset of the camera, relative to the drag margins.
**Note:** Offset H is used only to force offset relative to margins. It's not updated in any way if drag margins are enabled and can be used to set initial offset.
**Note:** Offset H is used only to force offset relative to margins. It's not updated in any way if drag margins are enabled and can be used to set initial offset.
+----
+
.. _class_Camera2D_property_offset_v:
.. _class_Camera2D_property_offset_v:
- :ref:`float<class_float>` **offset_v**
- :ref:`float<class_float>` **offset_v**
@@ -417,6 +457,8 @@ The vertical offset of the camera, relative to the drag margins.
**Note:** Used the same as :ref:`offset_h<class_Camera2D_property_offset_h>`.
**Note:** Used the same as :ref:`offset_h<class_Camera2D_property_offset_h>`.
Returns the specified margin. See also :ref:`drag_margin_bottom<class_Camera2D_property_drag_margin_bottom>`, :ref:`drag_margin_top<class_Camera2D_property_drag_margin_top>`, :ref:`drag_margin_left<class_Camera2D_property_drag_margin_left>`, and :ref:`drag_margin_right<class_Camera2D_property_drag_margin_right>`.
Returns the specified margin. See also :ref:`drag_margin_bottom<class_Camera2D_property_drag_margin_bottom>`, :ref:`drag_margin_top<class_Camera2D_property_drag_margin_top>`, :ref:`drag_margin_left<class_Camera2D_property_drag_margin_left>`, and :ref:`drag_margin_right<class_Camera2D_property_drag_margin_right>`.
Returns the specified camera limit. See also :ref:`limit_bottom<class_Camera2D_property_limit_bottom>`, :ref:`limit_top<class_Camera2D_property_limit_top>`, :ref:`limit_left<class_Camera2D_property_limit_left>`, and :ref:`limit_right<class_Camera2D_property_limit_right>`.
Returns the specified camera limit. See also :ref:`limit_bottom<class_Camera2D_property_limit_bottom>`, :ref:`limit_top<class_Camera2D_property_limit_top>`, :ref:`limit_left<class_Camera2D_property_limit_left>`, and :ref:`limit_right<class_Camera2D_property_limit_right>`.
+----
+
.. _class_Camera2D_method_make_current:
.. _class_Camera2D_method_make_current:
- void **make_current** **(** **)**
- void **make_current** **(** **)**
Make this the current 2D camera for the scene (viewport and layer), in case there are many cameras in the scene.
Make this the current 2D camera for the scene (viewport and layer), in case there are many cameras in the scene.
+----
+
.. _class_Camera2D_method_reset_smoothing:
.. _class_Camera2D_method_reset_smoothing:
- void **reset_smoothing** **(** **)**
- void **reset_smoothing** **(** **)**
@@ -546,12 +612,16 @@ Sets the camera's position immediately to its current smoothing destination.
Sets the specified margin. See also :ref:`drag_margin_bottom<class_Camera2D_property_drag_margin_bottom>`, :ref:`drag_margin_top<class_Camera2D_property_drag_margin_top>`, :ref:`drag_margin_left<class_Camera2D_property_drag_margin_left>`, and :ref:`drag_margin_right<class_Camera2D_property_drag_margin_right>`.
Sets the specified margin. See also :ref:`drag_margin_bottom<class_Camera2D_property_drag_margin_bottom>`, :ref:`drag_margin_top<class_Camera2D_property_drag_margin_top>`, :ref:`drag_margin_left<class_Camera2D_property_drag_margin_left>`, and :ref:`drag_margin_right<class_Camera2D_property_drag_margin_right>`.
Draws multiple, parallel lines with a uniform ``width``, segment-by-segment coloring, and optional antialiasing. Colors assigned to line segments match by index between ``points`` and ``colors``.
Draws multiple, parallel lines with a uniform ``width``, segment-by-segment coloring, and optional antialiasing. Colors assigned to line segments match by index between ``points`` and ``colors``.
Draws interconnected line segments with a uniform ``width``, segment-by-segment coloring, and optional antialiasing. Colors assigned to line segments match by index between ``points`` and ``colors``.
Draws interconnected line segments with a uniform ``width``, segment-by-segment coloring, and optional antialiasing. Colors assigned to line segments match by index between ``points`` and ``colors``.
Draws a textured rectangle at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped.
Draws a textured rectangle at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped.
Draws a textured rectangle region at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped.
Draws a textured rectangle region at a given position, optionally modulated by a color. If ``transpose`` is ``true``, the texture will have its X and Y coordinates swapped.
Returns ``true`` if the node is present in the :ref:`SceneTree<class_SceneTree>`, its :ref:`visible<class_CanvasItem_property_visible>` property is ``true`` and its inherited visibility is also ``true``.
Returns ``true`` if the node is present in the :ref:`SceneTree<class_SceneTree>`, its :ref:`visible<class_CanvasItem_property_visible>` property is ``true`` and its inherited visibility is also ``true``.
If ``enable`` is ``true``, children will be updated with global transform data.
If ``enable`` is ``true``, children will be updated with global transform data.
+----
+
.. _class_CanvasItem_method_show:
.. _class_CanvasItem_method_show:
- void **show** **(** **)**
- void **show** **(** **)**
Show the CanvasItem if it's currently hidden. For controls that inherit :ref:`Popup<class_Popup>`, the correct way to make them visible is to call one of the multiple ``popup*()`` functions instead.
Show the CanvasItem if it's currently hidden. For controls that inherit :ref:`Popup<class_Popup>`, the correct way to make them visible is to call one of the multiple ``popup*()`` functions instead.
Returns an array with all the methods of ``class`` or its ancestry if ``no_inheritance`` is ``false``. Every element of the array is a :ref:`Dictionary<class_Dictionary>` with the following keys: ``args``, ``default_args``, ``flags``, ``id``, ``name``, ``return: (class_name, hint, hint_string, name, type, usage)``.
Returns an array with all the methods of ``class`` or its ancestry if ``no_inheritance`` is ``false``. Every element of the array is a :ref:`Dictionary<class_Dictionary>` with the following keys: ``args``, ``default_args``, ``flags``, ``id``, ``name``, ``return: (class_name, hint, hint_string, name, type, usage)``.
Returns an array with all the properties of ``class`` or its ancestry if ``no_inheritance`` is ``false``.
Returns an array with all the properties of ``class`` or its ancestry if ``no_inheritance`` is ``false``.
+----
+
.. _class_ClassDB_method_class_get_signal:
.. _class_ClassDB_method_class_get_signal:
- :ref:`Dictionary<class_Dictionary>` **class_get_signal** **(** :ref:`String<class_String>` class, :ref:`String<class_String>` signal **)** const
- :ref:`Dictionary<class_Dictionary>` **class_get_signal** **(** :ref:`String<class_String>` class, :ref:`String<class_String>` signal **)** const
Returns the ``signal`` data of ``class`` or its ancestry. The returned value is a :ref:`Dictionary<class_Dictionary>` with the following keys: ``args``, ``default_args``, ``flags``, ``id``, ``name``, ``return: (class_name, hint, hint_string, name, type, usage)``.
Returns the ``signal`` data of ``class`` or its ancestry. The returned value is a :ref:`Dictionary<class_Dictionary>` with the following keys: ``args``, ``default_args``, ``flags``, ``id``, ``name``, ``return: (class_name, hint, hint_string, name, type, usage)``.
Returns an array with all the signals of ``class`` or its ancestry if ``no_inheritance`` is ``false``. Every element of the array is a :ref:`Dictionary<class_Dictionary>` as described in :ref:`class_get_signal<class_ClassDB_method_class_get_signal>`.
Returns an array with all the signals of ``class`` or its ancestry if ``no_inheritance`` is ``false``. Every element of the array is a :ref:`Dictionary<class_Dictionary>` as described in :ref:`class_get_signal<class_ClassDB_method_class_get_signal>`.
Accepts unhandled :ref:`InputEvent<class_InputEvent>`\ s. ``click_position`` is the clicked location in world space and ``click_normal`` is the normal vector extending from the clicked surface of the :ref:`Shape<class_Shape>` at ``shape_idx``. Connect to the ``input_event`` signal to easily pick up these events.
Accepts unhandled :ref:`InputEvent<class_InputEvent>`\ s. ``click_position`` is the clicked location in world space and ``click_normal`` is the normal vector extending from the clicked surface of the :ref:`Shape<class_Shape>` at ``shape_idx``. Connect to the ``input_event`` signal to easily pick up these events.
Emitted when an input event occurs. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true`` and at least one ``collision_layer`` bit to be set. See :ref:`_input_event<class_CollisionObject2D_method__input_event>` for details.
Emitted when an input event occurs. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true`` and at least one ``collision_layer`` bit to be set. See :ref:`_input_event<class_CollisionObject2D_method__input_event>` for details.
+----
+
.. _class_CollisionObject2D_signal_mouse_entered:
.. _class_CollisionObject2D_signal_mouse_entered:
- **mouse_entered** **(** **)**
- **mouse_entered** **(** **)**
Emitted when the mouse pointer enters any of this object's shapes. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true`` and at least one ``collision_layer`` bit to be set.
Emitted when the mouse pointer enters any of this object's shapes. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true`` and at least one ``collision_layer`` bit to be set.
+----
+
.. _class_CollisionObject2D_signal_mouse_exited:
.. _class_CollisionObject2D_signal_mouse_exited:
- **mouse_exited** **(** **)**
- **mouse_exited** **(** **)**
@@ -126,116 +130,156 @@ Method Descriptions
Accepts unhandled :ref:`InputEvent<class_InputEvent>`\ s. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true``. ``shape_idx`` is the child index of the clicked :ref:`Shape2D<class_Shape2D>`. Connect to the ``input_event`` signal to easily pick up these events.
Accepts unhandled :ref:`InputEvent<class_InputEvent>`\ s. Requires :ref:`input_pickable<class_CollisionObject2D_property_input_pickable>` to be ``true``. ``shape_idx`` is the child index of the clicked :ref:`Shape2D<class_Shape2D>`. Connect to the ``input_event`` signal to easily pick up these events.
Returns ``true`` if collisions for the shape owner originating from this ``CollisionObject2D`` will not be reported to collided with ``CollisionObject2D``\ s.
Returns ``true`` if collisions for the shape owner originating from this ``CollisionObject2D`` will not be reported to collided with ``CollisionObject2D``\ s.
If ``enable`` is ``true``, collisions for the shape owner originating from this ``CollisionObject2D`` will not be reported to collided with ``CollisionObject2D``\ s.
If ``enable`` is ``true``, collisions for the shape owner originating from this ``CollisionObject2D`` will not be reported to collided with ``CollisionObject2D``\ s.
- **preset_added** **(** :ref:`Color<class_Color>` color **)**
- **preset_added** **(** :ref:`Color<class_Color>` color **)**
Emitted when a preset is added.
Emitted when a preset is added.
+----
+
.. _class_ColorPicker_signal_preset_removed:
.. _class_ColorPicker_signal_preset_removed:
- **preset_removed** **(** :ref:`Color<class_Color>` color **)**
- **preset_removed** **(** :ref:`Color<class_Color>` color **)**
@@ -118,6 +122,8 @@ Property Descriptions
The currently selected color.
The currently selected color.
+----
+
.. _class_ColorPicker_property_deferred_mode:
.. _class_ColorPicker_property_deferred_mode:
- :ref:`bool<class_bool>` **deferred_mode**
- :ref:`bool<class_bool>` **deferred_mode**
@@ -132,6 +138,8 @@ The currently selected color.
If ``true``, the color will apply only after the user releases the mouse button, otherwise it will apply immediately even in mouse motion event (which can cause performance issues).
If ``true``, the color will apply only after the user releases the mouse button, otherwise it will apply immediately even in mouse motion event (which can cause performance issues).
+----
+
.. _class_ColorPicker_property_edit_alpha:
.. _class_ColorPicker_property_edit_alpha:
- :ref:`bool<class_bool>` **edit_alpha**
- :ref:`bool<class_bool>` **edit_alpha**
@@ -146,6 +154,8 @@ If ``true``, the color will apply only after the user releases the mouse button,
If ``true``, shows an alpha channel slider (transparency).
If ``true``, shows an alpha channel slider (transparency).
+----
+
.. _class_ColorPicker_property_hsv_mode:
.. _class_ColorPicker_property_hsv_mode:
- :ref:`bool<class_bool>` **hsv_mode**
- :ref:`bool<class_bool>` **hsv_mode**
@@ -162,6 +172,8 @@ If ``true``, allows editing the color with Hue/Saturation/Value sliders.
**Note:** Cannot be enabled if raw mode is on.
**Note:** Cannot be enabled if raw mode is on.
+----
+
.. _class_ColorPicker_property_presets_enabled:
.. _class_ColorPicker_property_presets_enabled:
- :ref:`bool<class_bool>` **presets_enabled**
- :ref:`bool<class_bool>` **presets_enabled**
@@ -176,6 +188,8 @@ If ``true``, allows editing the color with Hue/Saturation/Value sliders.
If ``true``, the "add preset" button is enabled.
If ``true``, the "add preset" button is enabled.
+----
+
.. _class_ColorPicker_property_presets_visible:
.. _class_ColorPicker_property_presets_visible:
- :ref:`bool<class_bool>` **presets_visible**
- :ref:`bool<class_bool>` **presets_visible**
@@ -190,6 +204,8 @@ If ``true``, the "add preset" button is enabled.
If ``true``, saved color presets are visible.
If ``true``, saved color presets are visible.
+----
+
.. _class_ColorPicker_property_raw_mode:
.. _class_ColorPicker_property_raw_mode:
- :ref:`bool<class_bool>` **raw_mode**
- :ref:`bool<class_bool>` **raw_mode**
@@ -217,12 +233,16 @@ Adds the given color to a list of color presets. The presets are displayed in th
**Note:** the presets list is only for *this* color picker.
**Note:** the presets list is only for *this* color picker.
+----
+
.. _class_ColorPicker_method_erase_preset:
.. _class_ColorPicker_method_erase_preset:
- void **erase_preset** **(** :ref:`Color<class_Color>` color **)**
- void **erase_preset** **(** :ref:`Color<class_Color>` color **)**
Removes the given color from the list of color presets of this color picker.
Removes the given color from the list of color presets of this color picker.
Returns the current value for the specified section and key. If the section and/or the key do not exist, the method returns the value of the optional ``default`` argument, or ``null`` if it is omitted.
Returns the current value for the specified section and key. If the section and/or the key do not exist, the method returns the value of the optional ``default`` argument, or ``null`` if it is omitted.
Loads the config file specified as a parameter. The file's contents are parsed and loaded in the ConfigFile object which the method was called on. Returns one of the :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`, :ref:`@GlobalScope.FAILED<class_@GlobalScope_constant_FAILED>` or ``ERR_*`` constants listed in :ref:`@GlobalScope<class_@GlobalScope>`. If the load was successful, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Loads the config file specified as a parameter. The file's contents are parsed and loaded in the ConfigFile object which the method was called on. Returns one of the :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`, :ref:`@GlobalScope.FAILED<class_@GlobalScope_constant_FAILED>` or ``ERR_*`` constants listed in :ref:`@GlobalScope<class_@GlobalScope>`. If the load was successful, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Saves the contents of the ConfigFile object to the file specified as a parameter. The output file uses an INI-style structure. Returns one of the :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`, :ref:`@GlobalScope.FAILED<class_@GlobalScope_constant_FAILED>` or ``ERR_*`` constants listed in :ref:`@GlobalScope<class_@GlobalScope>`. If the load was successful, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Saves the contents of the ConfigFile object to the file specified as a parameter. The output file uses an INI-style structure. Returns one of the :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`, :ref:`@GlobalScope.FAILED<class_@GlobalScope_constant_FAILED>` or ``ERR_*`` constants listed in :ref:`@GlobalScope<class_@GlobalScope>`. If the load was successful, the return value is :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>`.
Emitted when the node receives an :ref:`InputEvent<class_InputEvent>`.
Emitted when the node receives an :ref:`InputEvent<class_InputEvent>`.
+----
+
.. _class_Control_signal_minimum_size_changed:
.. _class_Control_signal_minimum_size_changed:
- **minimum_size_changed** **(** **)**
- **minimum_size_changed** **(** **)**
Emitted when the node's minimum size changes.
Emitted when the node's minimum size changes.
+----
+
.. _class_Control_signal_modal_closed:
.. _class_Control_signal_modal_closed:
- **modal_closed** **(** **)**
- **modal_closed** **(** **)**
Emitted when a modal ``Control`` is closed. See :ref:`show_modal<class_Control_method_show_modal>`.
Emitted when a modal ``Control`` is closed. See :ref:`show_modal<class_Control_method_show_modal>`.
+----
+
.. _class_Control_signal_mouse_entered:
.. _class_Control_signal_mouse_entered:
- **mouse_entered** **(** **)**
- **mouse_entered** **(** **)**
Emitted when the mouse enters the control's ``Rect`` area, provided its :ref:`mouse_filter<class_Control_property_mouse_filter>` lets the event reach it.
Emitted when the mouse enters the control's ``Rect`` area, provided its :ref:`mouse_filter<class_Control_property_mouse_filter>` lets the event reach it.
+----
+
.. _class_Control_signal_mouse_exited:
.. _class_Control_signal_mouse_exited:
- **mouse_exited** **(** **)**
- **mouse_exited** **(** **)**
Emitted when the mouse leaves the control's ``Rect`` area, provided its :ref:`mouse_filter<class_Control_property_mouse_filter>` lets the event reach it.
Emitted when the mouse leaves the control's ``Rect`` area, provided its :ref:`mouse_filter<class_Control_property_mouse_filter>` lets the event reach it.
+----
+
.. _class_Control_signal_resized:
.. _class_Control_signal_resized:
- **resized** **(** **)**
- **resized** **(** **)**
Emitted when the control changes size.
Emitted when the control changes size.
+----
+
.. _class_Control_signal_size_flags_changed:
.. _class_Control_signal_size_flags_changed:
- **size_flags_changed** **(** **)**
- **size_flags_changed** **(** **)**
@@ -308,6 +324,8 @@ enum **FocusMode**:
- **FOCUS_ALL** = **2** --- The node can grab focus on mouse click or using the arrows and the Tab keys on the keyboard. Use with :ref:`focus_mode<class_Control_property_focus_mode>`.
- **FOCUS_ALL** = **2** --- The node can grab focus on mouse click or using the arrows and the Tab keys on the keyboard. Use with :ref:`focus_mode<class_Control_property_focus_mode>`.
+----
+
.. _enum_Control_CursorShape:
.. _enum_Control_CursorShape:
.. _class_Control_constant_CURSOR_ARROW:
.. _class_Control_constant_CURSOR_ARROW:
@@ -380,6 +398,8 @@ enum **CursorShape**:
- **CURSOR_HELP** = **16** --- Show the system's help mouse cursor when the user hovers the node, a question mark.
- **CURSOR_HELP** = **16** --- Show the system's help mouse cursor when the user hovers the node, a question mark.
+----
+
.. _enum_Control_LayoutPreset:
.. _enum_Control_LayoutPreset:
.. _class_Control_constant_PRESET_TOP_LEFT:
.. _class_Control_constant_PRESET_TOP_LEFT:
@@ -448,6 +468,8 @@ enum **LayoutPreset**:
- **PRESET_WIDE** = **15** --- Snap all 4 anchors to the respective corners of the parent control. Set all 4 margins to 0 after you applied this preset and the ``Control`` will fit its parent control. This is equivalent to the "Full Rect" layout option in the editor. Use with :ref:`set_anchors_preset<class_Control_method_set_anchors_preset>`.
- **PRESET_WIDE** = **15** --- Snap all 4 anchors to the respective corners of the parent control. Set all 4 margins to 0 after you applied this preset and the ``Control`` will fit its parent control. This is equivalent to the "Full Rect" layout option in the editor. Use with :ref:`set_anchors_preset<class_Control_method_set_anchors_preset>`.
+----
+
.. _enum_Control_LayoutPresetMode:
.. _enum_Control_LayoutPresetMode:
.. _class_Control_constant_PRESET_MODE_MINSIZE:
.. _class_Control_constant_PRESET_MODE_MINSIZE:
@@ -468,6 +490,8 @@ enum **LayoutPresetMode**:
- **PRESET_MODE_KEEP_SIZE** = **3** --- The control's size will not change.
- **PRESET_MODE_KEEP_SIZE** = **3** --- The control's size will not change.
+----
+
.. _enum_Control_SizeFlags:
.. _enum_Control_SizeFlags:
.. _class_Control_constant_SIZE_FILL:
.. _class_Control_constant_SIZE_FILL:
@@ -492,6 +516,8 @@ enum **SizeFlags**:
- **SIZE_SHRINK_END** = **8** --- Tells the parent :ref:`Container<class_Container>` to align the node with its end, either the bottom or the right edge. It doesn't work with the fill or expand size flags. Use with :ref:`size_flags_horizontal<class_Control_property_size_flags_horizontal>` and :ref:`size_flags_vertical<class_Control_property_size_flags_vertical>`.
- **SIZE_SHRINK_END** = **8** --- Tells the parent :ref:`Container<class_Container>` to align the node with its end, either the bottom or the right edge. It doesn't work with the fill or expand size flags. Use with :ref:`size_flags_horizontal<class_Control_property_size_flags_horizontal>` and :ref:`size_flags_vertical<class_Control_property_size_flags_vertical>`.
+----
+
.. _enum_Control_MouseFilter:
.. _enum_Control_MouseFilter:
.. _class_Control_constant_MOUSE_FILTER_STOP:
.. _class_Control_constant_MOUSE_FILTER_STOP:
@@ -508,6 +534,8 @@ enum **MouseFilter**:
- **MOUSE_FILTER_IGNORE** = **2** --- The control will not receive mouse button input events through :ref:`_gui_input<class_Control_method__gui_input>`. The control will also not receive the :ref:`mouse_entered<class_Control_signal_mouse_entered>` nor :ref:`mouse_exited<class_Control_signal_mouse_exited>` signals. This will not block other controls from receiving these events or firing the signals. Ignored events will not be handled automatically.
- **MOUSE_FILTER_IGNORE** = **2** --- The control will not receive mouse button input events through :ref:`_gui_input<class_Control_method__gui_input>`. The control will also not receive the :ref:`mouse_entered<class_Control_signal_mouse_entered>` nor :ref:`mouse_exited<class_Control_signal_mouse_exited>` signals. This will not block other controls from receiving these events or firing the signals. Ignored events will not be handled automatically.
+----
+
.. _enum_Control_GrowDirection:
.. _enum_Control_GrowDirection:
.. _class_Control_constant_GROW_DIRECTION_BEGIN:
.. _class_Control_constant_GROW_DIRECTION_BEGIN:
@@ -524,6 +552,8 @@ enum **GrowDirection**:
- **GROW_DIRECTION_BOTH** = **2** --- The control will grow in both directions equally to make up if its minimum size is changed to be greater than its current size.
- **GROW_DIRECTION_BOTH** = **2** --- The control will grow in both directions equally to make up if its minimum size is changed to be greater than its current size.
+----
+
.. _enum_Control_Anchor:
.. _enum_Control_Anchor:
.. _class_Control_constant_ANCHOR_BEGIN:
.. _class_Control_constant_ANCHOR_BEGIN:
@@ -614,6 +644,8 @@ Property Descriptions
Anchors the bottom edge of the node to the origin, the center, or the end of its parent control. It changes how the bottom margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
Anchors the bottom edge of the node to the origin, the center, or the end of its parent control. It changes how the bottom margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
+----
+
.. _class_Control_property_anchor_left:
.. _class_Control_property_anchor_left:
- :ref:`float<class_float>` **anchor_left**
- :ref:`float<class_float>` **anchor_left**
@@ -626,6 +658,8 @@ Anchors the bottom edge of the node to the origin, the center, or the end of its
Anchors the left edge of the node to the origin, the center or the end of its parent control. It changes how the left margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
Anchors the left edge of the node to the origin, the center or the end of its parent control. It changes how the left margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
+----
+
.. _class_Control_property_anchor_right:
.. _class_Control_property_anchor_right:
- :ref:`float<class_float>` **anchor_right**
- :ref:`float<class_float>` **anchor_right**
@@ -638,6 +672,8 @@ Anchors the left edge of the node to the origin, the center or the end of its pa
Anchors the right edge of the node to the origin, the center or the end of its parent control. It changes how the right margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
Anchors the right edge of the node to the origin, the center or the end of its parent control. It changes how the right margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
+----
+
.. _class_Control_property_anchor_top:
.. _class_Control_property_anchor_top:
- :ref:`float<class_float>` **anchor_top**
- :ref:`float<class_float>` **anchor_top**
@@ -650,6 +686,8 @@ Anchors the right edge of the node to the origin, the center or the end of its p
Anchors the top edge of the node to the origin, the center or the end of its parent control. It changes how the top margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
Anchors the top edge of the node to the origin, the center or the end of its parent control. It changes how the top margin updates when the node moves or changes size. You can use one of the :ref:`Anchor<enum_Control_Anchor>` constants for convenience.
@@ -678,6 +718,8 @@ The focus access mode for the control (None, Click or All). Only one Control can
Tells Godot which node it should give keyboard focus to if the user presses the down arrow on the keyboard or down on a gamepad by default. You can change the key by editing the ``ui_down`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
Tells Godot which node it should give keyboard focus to if the user presses the down arrow on the keyboard or down on a gamepad by default. You can change the key by editing the ``ui_down`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
@@ -692,6 +734,8 @@ Tells Godot which node it should give keyboard focus to if the user presses the
Tells Godot which node it should give keyboard focus to if the user presses the left arrow on the keyboard or left on a gamepad by default. You can change the key by editing the ``ui_left`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the left of this one.
Tells Godot which node it should give keyboard focus to if the user presses the left arrow on the keyboard or left on a gamepad by default. You can change the key by editing the ``ui_left`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the left of this one.
@@ -706,6 +750,8 @@ Tells Godot which node it should give keyboard focus to if the user presses the
Tells Godot which node it should give keyboard focus to if the user presses the right arrow on the keyboard or right on a gamepad by default. You can change the key by editing the ``ui_right`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
Tells Godot which node it should give keyboard focus to if the user presses the right arrow on the keyboard or right on a gamepad by default. You can change the key by editing the ``ui_right`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
@@ -720,6 +766,8 @@ Tells Godot which node it should give keyboard focus to if the user presses the
Tells Godot which node it should give keyboard focus to if the user presses the top arrow on the keyboard or top on a gamepad by default. You can change the key by editing the ``ui_top`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
Tells Godot which node it should give keyboard focus to if the user presses the top arrow on the keyboard or top on a gamepad by default. You can change the key by editing the ``ui_top`` input action. The node must be a ``Control``. If this property is not set, Godot will give focus to the closest ``Control`` to the bottom of this one.
+----
+
.. _class_Control_property_focus_next:
.. _class_Control_property_focus_next:
- :ref:`NodePath<class_NodePath>` **focus_next**
- :ref:`NodePath<class_NodePath>` **focus_next**
@@ -736,6 +784,8 @@ Tells Godot which node it should give keyboard focus to if the user presses Tab
If this property is not set, Godot will select a "best guess" based on surrounding nodes in the scene tree.
If this property is not set, Godot will select a "best guess" based on surrounding nodes in the scene tree.
@@ -766,6 +818,8 @@ If this property is not set, Godot will select a "best guess" based on surroundi
Controls the direction on the horizontal axis in which the control should grow if its horizontal minimum size is changed to be greater than its current size, as the control always has to be at least the minimum size.
Controls the direction on the horizontal axis in which the control should grow if its horizontal minimum size is changed to be greater than its current size, as the control always has to be at least the minimum size.
@@ -780,6 +834,8 @@ Controls the direction on the horizontal axis in which the control should grow i
Controls the direction on the vertical axis in which the control should grow if its vertical minimum size is changed to be greater than its current size, as the control always has to be at least the minimum size.
Controls the direction on the vertical axis in which the control should grow if its vertical minimum size is changed to be greater than its current size, as the control always has to be at least the minimum size.
+----
+
.. _class_Control_property_hint_tooltip:
.. _class_Control_property_hint_tooltip:
- :ref:`String<class_String>` **hint_tooltip**
- :ref:`String<class_String>` **hint_tooltip**
@@ -792,6 +848,8 @@ Controls the direction on the vertical axis in which the control should grow if
Changes the tooltip text. The tooltip appears when the user's mouse cursor stays idle over this control for a few moments, provided that the :ref:`mouse_filter<class_Control_property_mouse_filter>` property is not :ref:`MOUSE_FILTER_IGNORE<class_Control_constant_MOUSE_FILTER_IGNORE>`. You can change the time required for the tooltip to appear with ``gui/timers/tooltip_delay_sec`` option in Project Settings.
Changes the tooltip text. The tooltip appears when the user's mouse cursor stays idle over this control for a few moments, provided that the :ref:`mouse_filter<class_Control_property_mouse_filter>` property is not :ref:`MOUSE_FILTER_IGNORE<class_Control_constant_MOUSE_FILTER_IGNORE>`. You can change the time required for the tooltip to appear with ``gui/timers/tooltip_delay_sec`` option in Project Settings.
+----
+
.. _class_Control_property_margin_bottom:
.. _class_Control_property_margin_bottom:
- :ref:`float<class_float>` **margin_bottom**
- :ref:`float<class_float>` **margin_bottom**
@@ -808,6 +866,8 @@ Distance between the node's bottom edge and its parent control, based on :ref:`a
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
+----
+
.. _class_Control_property_margin_left:
.. _class_Control_property_margin_left:
- :ref:`float<class_float>` **margin_left**
- :ref:`float<class_float>` **margin_left**
@@ -824,6 +884,8 @@ Distance between the node's left edge and its parent control, based on :ref:`anc
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
+----
+
.. _class_Control_property_margin_right:
.. _class_Control_property_margin_right:
- :ref:`float<class_float>` **margin_right**
- :ref:`float<class_float>` **margin_right**
@@ -840,6 +902,8 @@ Distance between the node's right edge and its parent control, based on :ref:`an
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
+----
+
.. _class_Control_property_margin_top:
.. _class_Control_property_margin_top:
- :ref:`float<class_float>` **margin_top**
- :ref:`float<class_float>` **margin_top**
@@ -856,6 +920,8 @@ Distance between the node's top edge and its parent control, based on :ref:`anch
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
Margins are often controlled by one or multiple parent :ref:`Container<class_Container>` nodes, so you should not modify them manually if your node is a direct child of a :ref:`Container<class_Container>`. Margins update automatically when you move or resize the node.
@@ -886,6 +954,8 @@ The default cursor shape for this control. Useful for Godot plugins and applicat
Controls whether the control will be able to receive mouse button input events through :ref:`_gui_input<class_Control_method__gui_input>` and how these events should be handled. Also controls whether the control can receive the :ref:`mouse_entered<class_Control_signal_mouse_entered>`, and :ref:`mouse_exited<class_Control_signal_mouse_exited>` signals. See the constants to learn what each does.
Controls whether the control will be able to receive mouse button input events through :ref:`_gui_input<class_Control_method__gui_input>` and how these events should be handled. Also controls whether the control can receive the :ref:`mouse_entered<class_Control_signal_mouse_entered>`, and :ref:`mouse_exited<class_Control_signal_mouse_exited>` signals. See the constants to learn what each does.
+----
+
.. _class_Control_property_rect_clip_content:
.. _class_Control_property_rect_clip_content:
- :ref:`bool<class_bool>` **rect_clip_content**
- :ref:`bool<class_bool>` **rect_clip_content**
@@ -900,6 +970,8 @@ Controls whether the control will be able to receive mouse button input events t
Enables whether rendering of children should be clipped to this control's rectangle. If ``true``, parts of a child which would be visibly outside of this control's rectangle will not be rendered.
Enables whether rendering of children should be clipped to this control's rectangle. If ``true``, parts of a child which would be visibly outside of this control's rectangle will not be rendered.
@@ -910,6 +982,8 @@ Enables whether rendering of children should be clipped to this control's rectan
The node's global position, relative to the world (usually to the top-left corner of the window).
The node's global position, relative to the world (usually to the top-left corner of the window).
+----
+
.. _class_Control_property_rect_min_size:
.. _class_Control_property_rect_min_size:
- :ref:`Vector2<class_Vector2>` **rect_min_size**
- :ref:`Vector2<class_Vector2>` **rect_min_size**
@@ -924,6 +998,8 @@ The node's global position, relative to the world (usually to the top-left corne
The minimum size of the node's bounding rectangle. If you set it to a value greater than (0, 0), the node's bounding rectangle will always have at least this size, even if its content is smaller. If it's set to (0, 0), the node sizes automatically to fit its content, be it a texture or child nodes.
The minimum size of the node's bounding rectangle. If you set it to a value greater than (0, 0), the node's bounding rectangle will always have at least this size, even if its content is smaller. If it's set to (0, 0), the node sizes automatically to fit its content, be it a texture or child nodes.
@@ -938,6 +1014,8 @@ The minimum size of the node's bounding rectangle. If you set it to a value grea
By default, the node's pivot is its top-left corner. When you change its :ref:`rect_scale<class_Control_property_rect_scale>`, it will scale around this pivot. Set this property to :ref:`rect_size<class_Control_property_rect_size>` / 2 to center the pivot in the node's rectangle.
By default, the node's pivot is its top-left corner. When you change its :ref:`rect_scale<class_Control_property_rect_scale>`, it will scale around this pivot. Set this property to :ref:`rect_size<class_Control_property_rect_size>` / 2 to center the pivot in the node's rectangle.
+----
+
.. _class_Control_property_rect_position:
.. _class_Control_property_rect_position:
- :ref:`Vector2<class_Vector2>` **rect_position**
- :ref:`Vector2<class_Vector2>` **rect_position**
@@ -950,6 +1028,8 @@ By default, the node's pivot is its top-left corner. When you change its :ref:`r
The node's position, relative to its parent. It corresponds to the rectangle's top-left corner. The property is not affected by :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>`.
The node's position, relative to its parent. It corresponds to the rectangle's top-left corner. The property is not affected by :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>`.
+----
+
.. _class_Control_property_rect_rotation:
.. _class_Control_property_rect_rotation:
- :ref:`float<class_float>` **rect_rotation**
- :ref:`float<class_float>` **rect_rotation**
@@ -964,6 +1044,8 @@ The node's position, relative to its parent. It corresponds to the rectangle's t
The node's rotation around its pivot, in degrees. See :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>` to change the pivot's position.
The node's rotation around its pivot, in degrees. See :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>` to change the pivot's position.
+----
+
.. _class_Control_property_rect_scale:
.. _class_Control_property_rect_scale:
- :ref:`Vector2<class_Vector2>` **rect_scale**
- :ref:`Vector2<class_Vector2>` **rect_scale**
@@ -978,6 +1060,8 @@ The node's rotation around its pivot, in degrees. See :ref:`rect_pivot_offset<cl
The node's scale, relative to its :ref:`rect_size<class_Control_property_rect_size>`. Change this property to scale the node around its :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>`.
The node's scale, relative to its :ref:`rect_size<class_Control_property_rect_size>`. Change this property to scale the node around its :ref:`rect_pivot_offset<class_Control_property_rect_pivot_offset>`.
+----
+
.. _class_Control_property_rect_size:
.. _class_Control_property_rect_size:
- :ref:`Vector2<class_Vector2>` **rect_size**
- :ref:`Vector2<class_Vector2>` **rect_size**
@@ -990,6 +1074,8 @@ The node's scale, relative to its :ref:`rect_size<class_Control_property_rect_si
The size of the node's bounding rectangle, in pixels. :ref:`Container<class_Container>` nodes update this property automatically.
The size of the node's bounding rectangle, in pixels. :ref:`Container<class_Container>` nodes update this property automatically.
+----
+
.. _class_Control_property_size_flags_horizontal:
.. _class_Control_property_size_flags_horizontal:
- :ref:`int<class_int>` **size_flags_horizontal**
- :ref:`int<class_int>` **size_flags_horizontal**
@@ -1004,6 +1090,8 @@ The size of the node's bounding rectangle, in pixels. :ref:`Container<class_Cont
Tells the parent :ref:`Container<class_Container>` nodes how they should resize and place the node on the X axis. Use one of the :ref:`SizeFlags<enum_Control_SizeFlags>` constants to change the flags. See the constants to learn what each does.
Tells the parent :ref:`Container<class_Container>` nodes how they should resize and place the node on the X axis. Use one of the :ref:`SizeFlags<enum_Control_SizeFlags>` constants to change the flags. See the constants to learn what each does.
@@ -1018,6 +1106,8 @@ Tells the parent :ref:`Container<class_Container>` nodes how they should resize
If the node and at least one of its neighbours uses the :ref:`SIZE_EXPAND<class_Control_constant_SIZE_EXPAND>` size flag, the parent :ref:`Container<class_Container>` will let it take more or less space depending on this property. If this node has a stretch ratio of 2 and its neighbour a ratio of 1, this node will take two thirds of the available space.
If the node and at least one of its neighbours uses the :ref:`SIZE_EXPAND<class_Control_constant_SIZE_EXPAND>` size flag, the parent :ref:`Container<class_Container>` will let it take more or less space depending on this property. If this node has a stretch ratio of 2 and its neighbour a ratio of 1, this node will take two thirds of the available space.
+----
+
.. _class_Control_property_size_flags_vertical:
.. _class_Control_property_size_flags_vertical:
- :ref:`int<class_int>` **size_flags_vertical**
- :ref:`int<class_int>` **size_flags_vertical**
@@ -1032,6 +1122,8 @@ If the node and at least one of its neighbours uses the :ref:`SIZE_EXPAND<class_
Tells the parent :ref:`Container<class_Container>` nodes how they should resize and place the node on the Y axis. Use one of the :ref:`SizeFlags<enum_Control_SizeFlags>` constants to change the flags. See the constants to learn what each does.
Tells the parent :ref:`Container<class_Container>` nodes how they should resize and place the node on the Y axis. Use one of the :ref:`SizeFlags<enum_Control_SizeFlags>` constants to change the flags. See the constants to learn what each does.
+----
+
.. _class_Control_property_theme:
.. _class_Control_property_theme:
- :ref:`Theme<class_Theme>` **theme**
- :ref:`Theme<class_Theme>` **theme**
@@ -1055,6 +1147,8 @@ Virtual method to be implemented by the user. Returns whether :ref:`_gui_input<c
\* it happens outside parent's rectangle and the parent has either :ref:`rect_clip_content<class_Control_property_rect_clip_content>` or :ref:`_clips_input<class_Control_method__clips_input>` enabled.
\* it happens outside parent's rectangle and the parent has either :ref:`rect_clip_content<class_Control_property_rect_clip_content>` or :ref:`_clips_input<class_Control_method__clips_input>` enabled.
@@ -1118,48 +1216,64 @@ Example of usage with custom scene instance:
tooltip.get_node("Label").text = for_text
tooltip.get_node("Label").text = for_text
return tooltip
return tooltip
+----
+
.. _class_Control_method_accept_event:
.. _class_Control_method_accept_event:
- void **accept_event** **(** **)**
- void **accept_event** **(** **)**
Marks an input event as handled. Once you accept an input event, it stops propagating, even to nodes listening to :ref:`Node._unhandled_input<class_Node_method__unhandled_input>` or :ref:`Node._unhandled_key_input<class_Node_method__unhandled_key_input>`.
Marks an input event as handled. Once you accept an input event, it stops propagating, even to nodes listening to :ref:`Node._unhandled_input<class_Node_method__unhandled_input>` or :ref:`Node._unhandled_key_input<class_Node_method__unhandled_key_input>`.
+----
+
.. _class_Control_method_add_color_override:
.. _class_Control_method_add_color_override:
- void **add_color_override** **(** :ref:`String<class_String>` name, :ref:`Color<class_Color>` color **)**
- void **add_color_override** **(** :ref:`String<class_String>` name, :ref:`Color<class_Color>` color **)**
Overrides the :ref:`Color<class_Color>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If the ``color`` is empty or invalid, the override is cleared and the color from assigned :ref:`Theme<class_Theme>` is used.
Overrides the :ref:`Color<class_Color>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If the ``color`` is empty or invalid, the override is cleared and the color from assigned :ref:`Theme<class_Theme>` is used.
Overrides an integer constant with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If the ``constant`` is empty or invalid, the override is cleared and the constant from assigned :ref:`Theme<class_Theme>` is used.
Overrides an integer constant with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If the ``constant`` is empty or invalid, the override is cleared and the constant from assigned :ref:`Theme<class_Theme>` is used.
+----
+
.. _class_Control_method_add_font_override:
.. _class_Control_method_add_font_override:
- void **add_font_override** **(** :ref:`String<class_String>` name, :ref:`Font<class_Font>` font **)**
- void **add_font_override** **(** :ref:`String<class_String>` name, :ref:`Font<class_Font>` font **)**
Overrides the font with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``font`` is empty or invalid, the override is cleared and the font from assigned :ref:`Theme<class_Theme>` is used.
Overrides the font with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``font`` is empty or invalid, the override is cleared and the font from assigned :ref:`Theme<class_Theme>` is used.
Overrides the icon with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``icon`` is empty or invalid, the override is cleared and the icon from assigned :ref:`Theme<class_Theme>` is used.
Overrides the icon with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``icon`` is empty or invalid, the override is cleared and the icon from assigned :ref:`Theme<class_Theme>` is used.
Overrides the :ref:`Shader<class_Shader>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``shader`` is empty or invalid, the override is cleared and the shader from assigned :ref:`Theme<class_Theme>` is used.
Overrides the :ref:`Shader<class_Shader>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``shader`` is empty or invalid, the override is cleared and the shader from assigned :ref:`Theme<class_Theme>` is used.
Overrides the :ref:`StyleBox<class_StyleBox>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``stylebox`` is empty or invalid, the override is cleared and the :ref:`StyleBox<class_StyleBox>` from assigned :ref:`Theme<class_Theme>` is used.
Overrides the :ref:`StyleBox<class_StyleBox>` with given ``name`` in the :ref:`theme<class_Control_property_theme>` resource the control uses. If ``stylebox`` is empty or invalid, the override is cleared and the :ref:`StyleBox<class_StyleBox>` from assigned :ref:`Theme<class_Theme>` is used.
+----
+
.. _class_Control_method_can_drop_data:
.. _class_Control_method_can_drop_data:
- :ref:`bool<class_bool>` **can_drop_data** **(** :ref:`Vector2<class_Vector2>` position, :ref:`Variant<class_Variant>` data **)** virtual
- :ref:`bool<class_bool>` **can_drop_data** **(** :ref:`Vector2<class_Vector2>` position, :ref:`Variant<class_Variant>` data **)** virtual
@@ -1175,6 +1289,8 @@ This method should only be used to test the data. Process the data in :ref:`drop
# Otherwise, just check data
# Otherwise, just check data
return typeof(data) == TYPE_DICTIONARY and data.has("expected")
return typeof(data) == TYPE_DICTIONARY and data.has("expected")
+----
+
.. _class_Control_method_drop_data:
.. _class_Control_method_drop_data:
- void **drop_data** **(** :ref:`Vector2<class_Vector2>` position, :ref:`Variant<class_Variant>` data **)** virtual
- void **drop_data** **(** :ref:`Vector2<class_Vector2>` position, :ref:`Variant<class_Variant>` data **)** virtual
@@ -1189,6 +1305,8 @@ Godot calls this method to pass you the ``data`` from a control's :ref:`get_drag
@@ -1197,18 +1315,24 @@ Forces drag and bypasses :ref:`get_drag_data<class_Control_method_get_drag_data>
The methods :ref:`can_drop_data<class_Control_method_can_drop_data>` and :ref:`drop_data<class_Control_method_drop_data>` must be implemented on controls that want to receive drop data.
The methods :ref:`can_drop_data<class_Control_method_can_drop_data>` and :ref:`drop_data<class_Control_method_drop_data>` must be implemented on controls that want to receive drop data.
Returns the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`anchor_bottom<class_Control_property_anchor_bottom>`, :ref:`anchor_left<class_Control_property_anchor_left>`, :ref:`anchor_right<class_Control_property_anchor_right>` and :ref:`anchor_top<class_Control_property_anchor_top>`.
Returns the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`anchor_bottom<class_Control_property_anchor_bottom>`, :ref:`anchor_left<class_Control_property_anchor_left>`, :ref:`anchor_right<class_Control_property_anchor_right>` and :ref:`anchor_top<class_Control_property_anchor_top>`.
Returns :ref:`margin_left<class_Control_property_margin_left>` and :ref:`margin_top<class_Control_property_margin_top>`. See also :ref:`rect_position<class_Control_property_rect_position>`.
Returns :ref:`margin_left<class_Control_property_margin_left>` and :ref:`margin_top<class_Control_property_margin_top>`. See also :ref:`rect_position<class_Control_property_rect_position>`.
Returns combined minimum size from :ref:`rect_min_size<class_Control_property_rect_min_size>` and :ref:`get_minimum_size<class_Control_method_get_minimum_size>`.
Returns combined minimum size from :ref:`rect_min_size<class_Control_property_rect_min_size>` and :ref:`get_minimum_size<class_Control_method_get_minimum_size>`.
Returns the focus neighbour identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`focus_neighbour_bottom<class_Control_property_focus_neighbour_bottom>`, :ref:`focus_neighbour_left<class_Control_property_focus_neighbour_left>`, :ref:`focus_neighbour_right<class_Control_property_focus_neighbour_right>` and :ref:`focus_neighbour_top<class_Control_property_focus_neighbour_top>`.
Returns the focus neighbour identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`focus_neighbour_bottom<class_Control_property_focus_neighbour_bottom>`, :ref:`focus_neighbour_left<class_Control_property_focus_neighbour_left>`, :ref:`focus_neighbour_right<class_Control_property_focus_neighbour_right>` and :ref:`focus_neighbour_top<class_Control_property_focus_neighbour_top>`.
Returns the position and size of the control relative to the top-left corner of the screen. See :ref:`rect_position<class_Control_property_rect_position>` and :ref:`rect_size<class_Control_property_rect_size>`.
Returns the position and size of the control relative to the top-left corner of the screen. See :ref:`rect_position<class_Control_property_rect_position>` and :ref:`rect_size<class_Control_property_rect_size>`.
Returns the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`margin_bottom<class_Control_property_margin_bottom>`, :ref:`margin_left<class_Control_property_margin_left>`, :ref:`margin_right<class_Control_property_margin_right>` and :ref:`margin_top<class_Control_property_margin_top>`.
Returns the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum. A getter method for :ref:`margin_bottom<class_Control_property_margin_bottom>`, :ref:`margin_left<class_Control_property_margin_left>`, :ref:`margin_right<class_Control_property_margin_right>` and :ref:`margin_top<class_Control_property_margin_top>`.
Returns the position and size of the control relative to the top-left corner of the parent Control. See :ref:`rect_position<class_Control_property_rect_position>` and :ref:`rect_size<class_Control_property_rect_size>`.
Returns the position and size of the control relative to the top-left corner of the parent Control. See :ref:`rect_position<class_Control_property_rect_position>` and :ref:`rect_size<class_Control_property_rect_size>`.
Returns a :ref:`StyleBox<class_StyleBox>` from assigned :ref:`Theme<class_Theme>` with given ``name`` and associated with ``Control`` of given ``type``.
Returns a :ref:`StyleBox<class_StyleBox>` from assigned :ref:`Theme<class_Theme>` with given ``name`` and associated with ``Control`` of given ``type``.
Returns ``true`` if :ref:`Color<class_Color>` with given ``name`` and associated with ``Control`` of given ``type`` exists in assigned :ref:`Theme<class_Theme>`.
Returns ``true`` if :ref:`Color<class_Color>` with given ``name`` and associated with ``Control`` of given ``type`` exists in assigned :ref:`Theme<class_Theme>`.
+----
+
.. _class_Control_method_has_color_override:
.. _class_Control_method_has_color_override:
- :ref:`bool<class_bool>` **has_color_override** **(** :ref:`String<class_String>` name **)** const
- :ref:`bool<class_bool>` **has_color_override** **(** :ref:`String<class_String>` name **)** const
Returns ``true`` if :ref:`Color<class_Color>` with given ``name`` has a valid override in this ``Control`` node.
Returns ``true`` if :ref:`Color<class_Color>` with given ``name`` has a valid override in this ``Control`` node.
Returns ``true`` if :ref:`StyleBox<class_StyleBox>` with given ``name`` and associated with ``Control`` of given ``type`` exists in assigned :ref:`Theme<class_Theme>`.
Returns ``true`` if :ref:`StyleBox<class_StyleBox>` with given ``name`` and associated with ``Control`` of given ``type`` exists in assigned :ref:`Theme<class_Theme>`.
+----
+
.. _class_Control_method_has_stylebox_override:
.. _class_Control_method_has_stylebox_override:
- :ref:`bool<class_bool>` **has_stylebox_override** **(** :ref:`String<class_String>` name **)** const
- :ref:`bool<class_bool>` **has_stylebox_override** **(** :ref:`String<class_String>` name **)** const
Returns ``true`` if :ref:`StyleBox<class_StyleBox>` with given ``name`` has a valid override in this ``Control`` node.
Returns ``true`` if :ref:`StyleBox<class_StyleBox>` with given ``name`` has a valid override in this ``Control`` node.
+----
+
.. _class_Control_method_minimum_size_changed:
.. _class_Control_method_minimum_size_changed:
- void **minimum_size_changed** **(** **)**
- void **minimum_size_changed** **(** **)**
Invalidates the size cache in this node and in parent nodes up to toplevel. Intended to be used with :ref:`get_minimum_size<class_Control_method_get_minimum_size>` when the return value is changed. Setting :ref:`rect_min_size<class_Control_property_rect_min_size>` directly calls this method automatically.
Invalidates the size cache in this node and in parent nodes up to toplevel. Intended to be used with :ref:`get_minimum_size<class_Control_method_get_minimum_size>` when the return value is changed. Setting :ref:`rect_min_size<class_Control_property_rect_min_size>` directly calls this method automatically.
+----
+
.. _class_Control_method_release_focus:
.. _class_Control_method_release_focus:
- void **release_focus** **(** **)**
- void **release_focus** **(** **)**
Give up the focus. No other control will be able to receive keyboard input.
Give up the focus. No other control will be able to receive keyboard input.
@@ -1458,18 +1654,24 @@ If ``keep_margin`` is ``true``, margins aren't updated after this operation.
If ``push_opposite_anchor`` is ``true`` and the opposite anchor overlaps this anchor, the opposite one will have its value overridden. For example, when setting left anchor to 1 and the right anchor has value of 0.5, the right anchor will also get value of 1. If ``push_opposite_anchor`` was ``false``, the left anchor would get value 0.5.
If ``push_opposite_anchor`` is ``true`` and the opposite anchor overlaps this anchor, the opposite one will have its value overridden. For example, when setting left anchor to 1 and the right anchor has value of 0.5, the right anchor will also get value of 1. If ``push_opposite_anchor`` was ``false``, the left anchor would get value 0.5.
Works the same as :ref:`set_anchor<class_Control_method_set_anchor>`, but instead of ``keep_margin`` argument and automatic update of margin, it allows to set the margin offset yourself (see :ref:`set_margin<class_Control_method_set_margin>`).
Works the same as :ref:`set_anchor<class_Control_method_set_anchor>`, but instead of ``keep_margin`` argument and automatic update of margin, it allows to set the margin offset yourself (see :ref:`set_margin<class_Control_method_set_margin>`).
Sets both anchor preset and margin preset. See :ref:`set_anchors_preset<class_Control_method_set_anchors_preset>` and :ref:`set_margins_preset<class_Control_method_set_margins_preset>`.
Sets both anchor preset and margin preset. See :ref:`set_anchors_preset<class_Control_method_set_anchors_preset>` and :ref:`set_margins_preset<class_Control_method_set_margins_preset>`.
@@ -1478,12 +1680,16 @@ Sets the anchors to a ``preset`` from :ref:`LayoutPreset<enum_Control_LayoutPres
If ``keep_margins`` is ``true``, control's position will also be updated.
If ``keep_margins`` is ``true``, control's position will also be updated.
+----
+
.. _class_Control_method_set_begin:
.. _class_Control_method_set_begin:
- void **set_begin** **(** :ref:`Vector2<class_Vector2>` position **)**
- void **set_begin** **(** :ref:`Vector2<class_Vector2>` position **)**
Sets :ref:`margin_left<class_Control_property_margin_left>` and :ref:`margin_top<class_Control_property_margin_top>` at the same time. Equivalent of changing :ref:`rect_position<class_Control_property_rect_position>`.
Sets :ref:`margin_left<class_Control_property_margin_left>` and :ref:`margin_top<class_Control_property_margin_top>` at the same time. Equivalent of changing :ref:`rect_position<class_Control_property_rect_position>`.
Sets the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum to ``Control`` at ``neighbor`` node path. A setter method for :ref:`focus_neighbour_bottom<class_Control_property_focus_neighbour_bottom>`, :ref:`focus_neighbour_left<class_Control_property_focus_neighbour_left>`, :ref:`focus_neighbour_right<class_Control_property_focus_neighbour_right>` and :ref:`focus_neighbour_top<class_Control_property_focus_neighbour_top>`.
Sets the anchor identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum to ``Control`` at ``neighbor`` node path. A setter method for :ref:`focus_neighbour_bottom<class_Control_property_focus_neighbour_bottom>`, :ref:`focus_neighbour_left<class_Control_property_focus_neighbour_left>`, :ref:`focus_neighbour_right<class_Control_property_focus_neighbour_right>` and :ref:`focus_neighbour_top<class_Control_property_focus_neighbour_top>`.
Sets the margin identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum to given ``offset``. A setter method for :ref:`margin_bottom<class_Control_property_margin_bottom>`, :ref:`margin_left<class_Control_property_margin_left>`, :ref:`margin_right<class_Control_property_margin_right>` and :ref:`margin_top<class_Control_property_margin_top>`.
Sets the margin identified by ``margin`` constant from :ref:`Margin<enum_@GlobalScope_Margin>` enum to given ``offset``. A setter method for :ref:`margin_bottom<class_Control_property_margin_bottom>`, :ref:`margin_left<class_Control_property_margin_left>`, :ref:`margin_right<class_Control_property_margin_right>` and :ref:`margin_top<class_Control_property_margin_top>`.
The rectangle's extents if :ref:`emission_shape<class_CPUParticles_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_BOX<class_CPUParticles_constant_EMISSION_SHAPE_BOX>`.
The rectangle's extents if :ref:`emission_shape<class_CPUParticles_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_BOX<class_CPUParticles_constant_EMISSION_SHAPE_BOX>`.
@@ -645,6 +701,8 @@ Particles will be emitted inside this region. See :ref:`EmissionShape<enum_CPUPa
The sphere's radius if :ref:`EmissionShape<enum_CPUParticles_EmissionShape>` is set to :ref:`EMISSION_SHAPE_SPHERE<class_CPUParticles_constant_EMISSION_SHAPE_SPHERE>`.
The sphere's radius if :ref:`EmissionShape<enum_CPUParticles_EmissionShape>` is set to :ref:`EMISSION_SHAPE_SPHERE<class_CPUParticles_constant_EMISSION_SHAPE_SPHERE>`.
+----
+
.. _class_CPUParticles_property_emitting:
.. _class_CPUParticles_property_emitting:
- :ref:`bool<class_bool>` **emitting**
- :ref:`bool<class_bool>` **emitting**
@@ -659,6 +717,8 @@ The sphere's radius if :ref:`EmissionShape<enum_CPUParticles_EmissionShape>` is
If ``true``, particles are being emitted.
If ``true``, particles are being emitted.
+----
+
.. _class_CPUParticles_property_explosiveness:
.. _class_CPUParticles_property_explosiveness:
- :ref:`float<class_float>` **explosiveness**
- :ref:`float<class_float>` **explosiveness**
@@ -673,6 +733,8 @@ If ``true``, particles are being emitted.
How rapidly particles in an emission cycle are emitted. If greater than ``0``, there will be a gap in emissions before the next cycle begins.
How rapidly particles in an emission cycle are emitted. If greater than ``0``, there will be a gap in emissions before the next cycle begins.
+----
+
.. _class_CPUParticles_property_fixed_fps:
.. _class_CPUParticles_property_fixed_fps:
- :ref:`int<class_int>` **fixed_fps**
- :ref:`int<class_int>` **fixed_fps**
@@ -687,6 +749,8 @@ How rapidly particles in an emission cycle are emitted. If greater than ``0``, t
The particle system's frame rate is fixed to a value. For instance, changing the value to 2 will make the particles render at 2 frames per second. Note this does not slow down the particle system itself.
The particle system's frame rate is fixed to a value. For instance, changing the value to 2 will make the particles render at 2 frames per second. Note this does not slow down the particle system itself.
+----
+
.. _class_CPUParticles_property_flag_align_y:
.. _class_CPUParticles_property_flag_align_y:
- :ref:`bool<class_bool>` **flag_align_y**
- :ref:`bool<class_bool>` **flag_align_y**
@@ -701,6 +765,8 @@ The particle system's frame rate is fixed to a value. For instance, changing the
Align Y axis of particle with the direction of its velocity.
Align Y axis of particle with the direction of its velocity.
+----
+
.. _class_CPUParticles_property_flag_disable_z:
.. _class_CPUParticles_property_flag_disable_z:
- :ref:`bool<class_bool>` **flag_disable_z**
- :ref:`bool<class_bool>` **flag_disable_z**
@@ -715,6 +781,8 @@ Align Y axis of particle with the direction of its velocity.
If ``true``, particles will not move on the z axis.
If ``true``, particles will not move on the z axis.
+----
+
.. _class_CPUParticles_property_flag_rotate_y:
.. _class_CPUParticles_property_flag_rotate_y:
- :ref:`bool<class_bool>` **flag_rotate_y**
- :ref:`bool<class_bool>` **flag_rotate_y**
@@ -729,6 +797,8 @@ If ``true``, particles will not move on the z axis.
If ``true``, particles rotate around Y axis by :ref:`angle<class_CPUParticles_property_angle>`.
If ``true``, particles rotate around Y axis by :ref:`angle<class_CPUParticles_property_angle>`.
+----
+
.. _class_CPUParticles_property_flatness:
.. _class_CPUParticles_property_flatness:
- :ref:`float<class_float>` **flatness**
- :ref:`float<class_float>` **flatness**
@@ -743,6 +813,8 @@ If ``true``, particles rotate around Y axis by :ref:`angle<class_CPUParticles_pr
Amount of :ref:`spread<class_CPUParticles_property_spread>` in Y/Z plane. A value of ``1`` restricts particles to X/Z plane.
Amount of :ref:`spread<class_CPUParticles_property_spread>` in Y/Z plane. A value of ``1`` restricts particles to X/Z plane.
+----
+
.. _class_CPUParticles_property_fract_delta:
.. _class_CPUParticles_property_fract_delta:
- :ref:`bool<class_bool>` **fract_delta**
- :ref:`bool<class_bool>` **fract_delta**
@@ -757,6 +829,8 @@ Amount of :ref:`spread<class_CPUParticles_property_spread>` in Y/Z plane. A valu
If ``true``, results in fractional delta calculation which has a smoother particles display effect.
If ``true``, results in fractional delta calculation which has a smoother particles display effect.
+----
+
.. _class_CPUParticles_property_gravity:
.. _class_CPUParticles_property_gravity:
- :ref:`Vector3<class_Vector3>` **gravity**
- :ref:`Vector3<class_Vector3>` **gravity**
@@ -771,6 +845,8 @@ If ``true``, results in fractional delta calculation which has a smoother partic
Gravity applied to every particle.
Gravity applied to every particle.
+----
+
.. _class_CPUParticles_property_hue_variation:
.. _class_CPUParticles_property_hue_variation:
- :ref:`float<class_float>` **hue_variation**
- :ref:`float<class_float>` **hue_variation**
@@ -785,6 +861,8 @@ Gravity applied to every particle.
@@ -1093,6 +1215,8 @@ Each particle's scale will vary along this :ref:`Curve<class_Curve>`.
Scale randomness ratio.
Scale randomness ratio.
+----
+
.. _class_CPUParticles_property_speed_scale:
.. _class_CPUParticles_property_speed_scale:
- :ref:`float<class_float>` **speed_scale**
- :ref:`float<class_float>` **speed_scale**
@@ -1107,6 +1231,8 @@ Scale randomness ratio.
Particle system's running speed scaling ratio. A value of ``0`` can be used to pause the particles.
Particle system's running speed scaling ratio. A value of ``0`` can be used to pause the particles.
+----
+
.. _class_CPUParticles_property_spread:
.. _class_CPUParticles_property_spread:
- :ref:`float<class_float>` **spread**
- :ref:`float<class_float>` **spread**
@@ -1121,6 +1247,8 @@ Particle system's running speed scaling ratio. A value of ``0`` can be used to p
Each particle's initial direction range from ``+spread`` to ``-spread`` degrees. Applied to X/Z plane and Y/Z planes.
Each particle's initial direction range from ``+spread`` to ``-spread`` degrees. Applied to X/Z plane and Y/Z planes.
+----
+
.. _class_CPUParticles_property_tangential_accel:
.. _class_CPUParticles_property_tangential_accel:
- :ref:`float<class_float>` **tangential_accel**
- :ref:`float<class_float>` **tangential_accel**
@@ -1135,6 +1263,8 @@ Each particle's initial direction range from ``+spread`` to ``-spread`` degrees.
Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity giving the particles a swirling motion.
Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity giving the particles a swirling motion.
Sets this node's properties to match a given :ref:`Particles<class_Particles>` node with an assigned :ref:`ParticlesMaterial<class_ParticlesMaterial>`.
Sets this node's properties to match a given :ref:`Particles<class_Particles>` node with an assigned :ref:`ParticlesMaterial<class_ParticlesMaterial>`.
The rectangle's extents if :ref:`emission_shape<class_CPUParticles2D_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_RECTANGLE<class_CPUParticles2D_constant_EMISSION_SHAPE_RECTANGLE>`.
The rectangle's extents if :ref:`emission_shape<class_CPUParticles2D_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_RECTANGLE<class_CPUParticles2D_constant_EMISSION_SHAPE_RECTANGLE>`.
@@ -640,6 +696,8 @@ Particles will be emitted inside this region. See :ref:`EmissionShape<enum_CPUPa
The sphere's radius if :ref:`emission_shape<class_CPUParticles2D_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_SPHERE<class_CPUParticles2D_constant_EMISSION_SHAPE_SPHERE>`.
The sphere's radius if :ref:`emission_shape<class_CPUParticles2D_property_emission_shape>` is set to :ref:`EMISSION_SHAPE_SPHERE<class_CPUParticles2D_constant_EMISSION_SHAPE_SPHERE>`.
+----
+
.. _class_CPUParticles2D_property_emitting:
.. _class_CPUParticles2D_property_emitting:
- :ref:`bool<class_bool>` **emitting**
- :ref:`bool<class_bool>` **emitting**
@@ -654,6 +712,8 @@ The sphere's radius if :ref:`emission_shape<class_CPUParticles2D_property_emissi
If ``true``, particles are being emitted.
If ``true``, particles are being emitted.
+----
+
.. _class_CPUParticles2D_property_explosiveness:
.. _class_CPUParticles2D_property_explosiveness:
- :ref:`float<class_float>` **explosiveness**
- :ref:`float<class_float>` **explosiveness**
@@ -668,6 +728,8 @@ If ``true``, particles are being emitted.
How rapidly particles in an emission cycle are emitted. If greater than ``0``, there will be a gap in emissions before the next cycle begins.
How rapidly particles in an emission cycle are emitted. If greater than ``0``, there will be a gap in emissions before the next cycle begins.
+----
+
.. _class_CPUParticles2D_property_fixed_fps:
.. _class_CPUParticles2D_property_fixed_fps:
- :ref:`int<class_int>` **fixed_fps**
- :ref:`int<class_int>` **fixed_fps**
@@ -682,6 +744,8 @@ How rapidly particles in an emission cycle are emitted. If greater than ``0``, t
The particle system's frame rate is fixed to a value. For instance, changing the value to 2 will make the particles render at 2 frames per second. Note this does not slow down the simulation of the particle system itself.
The particle system's frame rate is fixed to a value. For instance, changing the value to 2 will make the particles render at 2 frames per second. Note this does not slow down the simulation of the particle system itself.
+----
+
.. _class_CPUParticles2D_property_flag_align_y:
.. _class_CPUParticles2D_property_flag_align_y:
- :ref:`bool<class_bool>` **flag_align_y**
- :ref:`bool<class_bool>` **flag_align_y**
@@ -696,6 +760,8 @@ The particle system's frame rate is fixed to a value. For instance, changing the
Align Y axis of particle with the direction of its velocity.
Align Y axis of particle with the direction of its velocity.
+----
+
.. _class_CPUParticles2D_property_flatness:
.. _class_CPUParticles2D_property_flatness:
- :ref:`float<class_float>` **flatness**
- :ref:`float<class_float>` **flatness**
@@ -708,6 +774,8 @@ Align Y axis of particle with the direction of its velocity.
| *Getter* | get_flatness() |
| *Getter* | get_flatness() |
+-----------+---------------------+
+-----------+---------------------+
+----
+
.. _class_CPUParticles2D_property_fract_delta:
.. _class_CPUParticles2D_property_fract_delta:
- :ref:`bool<class_bool>` **fract_delta**
- :ref:`bool<class_bool>` **fract_delta**
@@ -722,6 +790,8 @@ Align Y axis of particle with the direction of its velocity.
If ``true``, results in fractional delta calculation which has a smoother particles display effect.
If ``true``, results in fractional delta calculation which has a smoother particles display effect.
+----
+
.. _class_CPUParticles2D_property_gravity:
.. _class_CPUParticles2D_property_gravity:
- :ref:`Vector2<class_Vector2>` **gravity**
- :ref:`Vector2<class_Vector2>` **gravity**
@@ -736,6 +806,8 @@ If ``true``, results in fractional delta calculation which has a smoother partic
Gravity applied to every particle.
Gravity applied to every particle.
+----
+
.. _class_CPUParticles2D_property_hue_variation:
.. _class_CPUParticles2D_property_hue_variation:
- :ref:`float<class_float>` **hue_variation**
- :ref:`float<class_float>` **hue_variation**
@@ -750,6 +822,8 @@ Gravity applied to every particle.
@@ -1102,6 +1226,8 @@ Each particle's initial direction range from ``+spread`` to ``-spread`` degrees.
Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity giving the particles a swirling motion.
Tangential acceleration applied to each particle. Tangential acceleration is perpendicular to the particle's velocity giving the particles a swirling motion.
@@ -1128,6 +1256,8 @@ Each particle's tangential acceleration will vary along this :ref:`Curve<class_C
Tangential acceleration randomness ratio.
Tangential acceleration randomness ratio.
+----
+
.. _class_CPUParticles2D_property_texture:
.. _class_CPUParticles2D_property_texture:
- :ref:`Texture<class_Texture>` **texture**
- :ref:`Texture<class_Texture>` **texture**
@@ -1149,40 +1279,58 @@ Method Descriptions
Sets this node's properties to match a given :ref:`Particles2D<class_Particles2D>` node with an assigned :ref:`ParticlesMaterial<class_ParticlesMaterial>`.
Sets this node's properties to match a given :ref:`Particles2D<class_Particles2D>` node with an assigned :ref:`ParticlesMaterial<class_ParticlesMaterial>`.
Generates an RSA :ref:`CryptoKey<class_CryptoKey>` that can be used for creating self-signed certificates and passed to :ref:`StreamPeerSSL.accept_stream<class_StreamPeerSSL_method_accept_stream>`.
Generates an RSA :ref:`CryptoKey<class_CryptoKey>` that can be used for creating self-signed certificates and passed to :ref:`StreamPeerSSL.accept_stream<class_StreamPeerSSL_method_accept_stream>`.