diff --git a/classes/class_@gdscript.rst b/classes/class_@gdscript.rst index b8b8ed6f1..9491dcf8f 100644 --- a/classes/class_@gdscript.rst +++ b/classes/class_@gdscript.rst @@ -124,6 +124,37 @@ Positive floating-point infinity. This is the result of floating-point division Annotations ----------- +.. _class_@GDScript_annotation_@abstract: + +.. rst-class:: classref-annotation + +**@abstract**\ (\ ) :ref:`🔗` + +Marks a class or a method as abstract. + +An abstract class is a class that cannot be instantiated directly. Instead, it is meant to be inherited by other classes. Attempting to instantiate an abstract class will result in an error. + +An abstract method is a method that has no implementation. Therefore, a newline or a semicolon is expected after the function header. This defines a contract that inheriting classes must conform to, because the method signature must be compatible when overriding. + +Inheriting classes must either provide implementations for all abstract methods, or the inheriting class must be marked as abstract. If a class has at least one abstract method (either its own or an unimplemented inherited one), then it must also be marked as abstract. However, the reverse is not true: an abstract class is allowed to have no abstract methods. + +:: + + @abstract class Shape: + @abstract func draw() + + class Circle extends Shape: + func draw(): + print("Drawing a circle.") + + class Square extends Shape: + func draw(): + print("Drawing a square.") + +.. rst-class:: classref-item-separator + +---- + .. _class_@GDScript_annotation_@export: .. rst-class:: classref-annotation @@ -856,6 +887,8 @@ The order of ``mode``, ``sync`` and ``transfer_mode`` does not matter, but value @rpc("authority", "call_remote", "unreliable", 0) # Equivalent to @rpc func fn_default(): pass +\ **Note:** Methods annotated with :ref:`@rpc` cannot receive objects which define required parameters in :ref:`Object._init()`. See :ref:`Object._init()` for more details. + .. rst-class:: classref-item-separator ---- @@ -1073,7 +1106,7 @@ Converts a ``dictionary`` (created with :ref:`inst_to_dict()` **get_stack**\ (\ ) :ref:`🔗` -Returns an array of dictionaries representing the current call stack. See also :ref:`print_stack()`. +Returns an array of dictionaries representing the current call stack. :: @@ -1092,9 +1125,9 @@ Starting from ``_ready()``, ``bar()`` would print: [{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}] -\ **Note:** This function only works if the running instance is connected to a debugging server (i.e. an editor instance). :ref:`get_stack()` will not work in projects exported in release mode, or in projects exported in debug mode if not connected to a debugging server. +See also :ref:`print_debug()`, :ref:`print_stack()`, and :ref:`Engine.capture_script_backtraces()`. -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will return an empty array. +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator @@ -1268,7 +1301,9 @@ The output in the console may look like the following: Test print At: res://test.gd:15:_process() -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will instead print the thread ID. +See also :ref:`print_stack()`, :ref:`get_stack()`, and :ref:`Engine.capture_script_backtraces()`. + +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator @@ -1280,7 +1315,7 @@ The output in the console may look like the following: |void| **print_stack**\ (\ ) :ref:`🔗` -Prints a stack trace at the current code location. See also :ref:`get_stack()`. +Prints a stack trace at the current code location. The output in the console may look like the following: @@ -1288,9 +1323,9 @@ The output in the console may look like the following: Frame 0 - res://test.gd:16 in function '_process' -\ **Note:** This function only works if the running instance is connected to a debugging server (i.e. an editor instance). :ref:`print_stack()` will not work in projects exported in release mode, or in projects exported in debug mode if not connected to a debugging server. +See also :ref:`print_debug()`, :ref:`get_stack()`, and :ref:`Engine.capture_script_backtraces()`. -\ **Note:** Calling this function from a :ref:`Thread` is not supported. Doing so will instead print the thread ID. +\ **Note:** By default, backtraces are only available in editor builds and debug builds. To enable them for release builds as well, you need to enable :ref:`ProjectSettings.debug/settings/gdscript/always_track_call_stacks`. .. rst-class:: classref-item-separator diff --git a/classes/class_@globalscope.rst b/classes/class_@globalscope.rst index 5edd2c281..37b822d4e 100644 --- a/classes/class_@globalscope.rst +++ b/classes/class_@globalscope.rst @@ -3887,9 +3887,9 @@ Hints that a property will be changed on its own after setting, such as :ref:`Au :ref:`PropertyHint` **PROPERTY_HINT_GROUP_ENABLE** = ``42`` -Hints that a boolean property will enable the feature associated with the group that it occurs in. Only works within a group or subgroup. Use the optional hint string ``"feature"`` when the group only has properties that are meaningful when the feature is enabled. +Hints that a boolean property will enable the feature associated with the group that it occurs in. The property will be displayed as a checkbox on the group header. Only works within a group or subgroup. -\ **Note:** The ``"feature"`` hint string does not modify or reset any values. +By default, disabling the property hides all properties in the group. Use the optional hint string ``"checkbox_only"`` to disable this behavior. .. _class_@GlobalScope_constant_PROPERTY_HINT_INPUT_NAME: diff --git a/classes/class_aabb.rst b/classes/class_aabb.rst index f431b2378..e07be295a 100644 --- a/classes/class_aabb.rst +++ b/classes/class_aabb.rst @@ -23,7 +23,7 @@ It uses floating-point coordinates. The 2D counterpart to **AABB** is :ref:`Rect \ **Note:** Negative values for :ref:`size` are not supported. With negative size, most **AABB** methods do not work correctly. Use :ref:`abs()` to get an equivalent **AABB** with a non-negative size. -\ **Note:** In a boolean context, a **AABB** evaluates to ``false`` if both :ref:`position` and :ref:`size` are zero (equal to :ref:`Vector3.ZERO`). Otherwise, it always evaluates to ``true``. +\ **Note:** In a boolean context, an **AABB** evaluates to ``false`` if both :ref:`position` and :ref:`size` are zero (equal to :ref:`Vector3.ZERO`). Otherwise, it always evaluates to ``true``. .. note:: @@ -366,7 +366,7 @@ Returns the center point of the bounding box. This is the same as ``position + ( :ref:`Vector3` **get_endpoint**\ (\ idx\: :ref:`int`\ ) |const| :ref:`🔗` -Returns the position of one of the 8 vertices that compose this bounding box. With a ``idx`` of ``0`` this is the same as :ref:`position`, and a ``idx`` of ``7`` is the same as :ref:`end`. +Returns the position of one of the 8 vertices that compose this bounding box. With an ``idx`` of ``0`` this is the same as :ref:`position`, and an ``idx`` of ``7`` is the same as :ref:`end`. .. rst-class:: classref-item-separator diff --git a/classes/class_array.rst b/classes/class_array.rst index f4d542826..7e85ad4b3 100644 --- a/classes/class_array.rst +++ b/classes/class_array.rst @@ -679,7 +679,7 @@ If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays and dict Duplicates this array, deeply, like :ref:`duplicate()`\ ``(true)``, with extra control over how subresources are handled. -\ ``deep_subresources_mode`` must be one of the values from :ref:`ResourceDeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). +\ ``deep_subresources_mode`` must be one of the values from :ref:`DeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). .. rst-class:: classref-item-separator diff --git a/classes/class_bitmap.rst b/classes/class_bitmap.rst index c5c35657b..c03a2f92e 100644 --- a/classes/class_bitmap.rst +++ b/classes/class_bitmap.rst @@ -72,7 +72,7 @@ Method Descriptions :ref:`Image` **convert_to_image**\ (\ ) |const| :ref:`🔗` -Returns an image of the same size as the bitmap and with a :ref:`Format` of type :ref:`Image.FORMAT_L8`. ``true`` bits of the bitmap are being converted into white pixels, and ``false`` bits into black. +Returns an image of the same size as the bitmap and with an :ref:`Format` of type :ref:`Image.FORMAT_L8`. ``true`` bits of the bitmap are being converted into white pixels, and ``false`` bits into black. .. rst-class:: classref-item-separator diff --git a/classes/class_capsulemesh.rst b/classes/class_capsulemesh.rst index 6938c9ad0..0d0078c6c 100644 --- a/classes/class_capsulemesh.rst +++ b/classes/class_capsulemesh.rst @@ -61,6 +61,8 @@ Property Descriptions Total height of the capsule mesh (including the hemispherical ends). +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a circle. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -95,6 +97,8 @@ Number of radial segments on the capsule mesh. Radius of the capsule mesh. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a circle. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- diff --git a/classes/class_capsuleshape2d.rst b/classes/class_capsuleshape2d.rst index e75713b73..a28e55134 100644 --- a/classes/class_capsuleshape2d.rst +++ b/classes/class_capsuleshape2d.rst @@ -61,6 +61,8 @@ Property Descriptions The capsule's full height, including the semicircles. +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a circle. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -95,6 +97,8 @@ The capsule's height, excluding the semicircles. This is the height of the centr The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a circle. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_capsuleshape3d.rst b/classes/class_capsuleshape3d.rst index d89715943..c651da28a 100644 --- a/classes/class_capsuleshape3d.rst +++ b/classes/class_capsuleshape3d.rst @@ -68,6 +68,8 @@ Property Descriptions The capsule's full height, including the hemispheres. +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a sphere. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -102,6 +104,8 @@ The capsule's height, excluding the hemispheres. This is the height of the centr The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a sphere. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_codeedit.rst b/classes/class_codeedit.rst index 1687fa37f..d100ff934 100644 --- a/classes/class_codeedit.rst +++ b/classes/class_codeedit.rst @@ -892,7 +892,7 @@ Override this method to define how the selected entry should be inserted. If ``r Override this method to define what items in ``candidates`` should be displayed. -Both ``candidates`` and the return is a :ref:`Array` of :ref:`Dictionary`, see :ref:`get_code_completion_option()` for :ref:`Dictionary` content. +Both ``candidates`` and the return is an :ref:`Array` of :ref:`Dictionary`, see :ref:`get_code_completion_option()` for :ref:`Dictionary` content. .. rst-class:: classref-item-separator diff --git a/classes/class_cubemaparray.rst b/classes/class_cubemaparray.rst index c903f0c76..bce908165 100644 --- a/classes/class_cubemaparray.rst +++ b/classes/class_cubemaparray.rst @@ -37,7 +37,7 @@ The expected image order is X+, X-, Y+, Y-, Z+, Z- (in Godot's coordinate system - `6×1 cubemap template `__\ -Multiple layers are stacked on top of each other when using the default vertical import option (with the first layer at the top). Alternatively, you can choose an horizontal layout in the import options (with the first layer at the left). +Multiple layers are stacked on top of each other when using the default vertical import option (with the first layer at the top). Alternatively, you can choose a horizontal layout in the import options (with the first layer at the left). \ **Note:** **CubemapArray** is not supported in the Compatibility renderer due to graphics API limitations. diff --git a/classes/class_dictionary.rst b/classes/class_dictionary.rst index 87ce17118..8ec473bfe 100644 --- a/classes/class_dictionary.rst +++ b/classes/class_dictionary.rst @@ -408,7 +408,7 @@ If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays and dict Duplicates this dictionary, deeply, like :ref:`duplicate()`\ ``(true)``, with extra control over how subresources are handled. -\ ``deep_subresources_mode`` must be one of the values from :ref:`ResourceDeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). +\ ``deep_subresources_mode`` must be one of the values from :ref:`DeepDuplicateMode`. By default, only internal resources will be duplicated (recursively). .. rst-class:: classref-item-separator diff --git a/classes/class_displayserver.rst b/classes/class_displayserver.rst index 742daa0a2..37500ce14 100644 --- a/classes/class_displayserver.rst +++ b/classes/class_displayserver.rst @@ -3644,7 +3644,7 @@ Returns the user's clipboard as a string if possible. Returns the user's clipboard as an image if possible. -\ **Note:** This method uses the copied pixel data, e.g. from a image editing software or a web browser, not an image file copied from file explorer. +\ **Note:** This method uses the copied pixel data, e.g. from an image editing software or a web browser, not an image file copied from file explorer. .. rst-class:: classref-item-separator @@ -3850,7 +3850,7 @@ Each filter string in the ``filters`` array should be formatted like this: ``*.p Callbacks have the following arguments: ``status: bool, selected_paths: PackedStringArray, selected_filter_index: int``. **On Android,** the third callback argument (``selected_filter_index``) is always ``0``. -\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE` feature. Supported platforms include Linux (X11/Wayland), Windows, macOS, and Android. +\ **Note:** This method is implemented if the display server has the :ref:`FEATURE_NATIVE_DIALOG_FILE` feature. Supported platforms include Linux (X11/Wayland), Windows, macOS, and Android (API level 29+). \ **Note:** ``current_directory`` might be ignored. @@ -5841,7 +5841,7 @@ Note that Godot depends on system libraries for text-to-speech functionality. Th :ref:`PackedStringArray` **tts_get_voices_for_language**\ (\ language\: :ref:`String`\ ) |const| :ref:`🔗` -Returns an :ref:`PackedStringArray` of voice identifiers for the ``language``. +Returns a :ref:`PackedStringArray` of voice identifiers for the ``language``. \ **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows. diff --git a/classes/class_editordebuggersession.rst b/classes/class_editordebuggersession.rst index 7c7705dd4..6ed604311 100644 --- a/classes/class_editordebuggersession.rst +++ b/classes/class_editordebuggersession.rst @@ -19,7 +19,7 @@ A class to interact with the editor debugger. Description ----------- -This class cannot be directly instantiated and must be retrieved via a :ref:`EditorDebuggerPlugin`. +This class cannot be directly instantiated and must be retrieved via an :ref:`EditorDebuggerPlugin`. You can add tabs to the session UI via :ref:`add_session_tab()`, send messages via :ref:`send_message()`, and toggle :ref:`EngineProfiler`\ s via :ref:`toggle_profiler()`. diff --git a/classes/class_editorexportplatformandroid.rst b/classes/class_editorexportplatformandroid.rst index 2fd287760..980cc3f54 100644 --- a/classes/class_editorexportplatformandroid.rst +++ b/classes/class_editorexportplatformandroid.rst @@ -416,6 +416,8 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`permissions/write_user_dictionary` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`screen/edge_to_edge` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`screen/immersive_mode` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`screen/support_large` | @@ -2788,6 +2790,20 @@ Allows an application to write to the user dictionary. ---- +.. _class_EditorExportPlatformAndroid_property_screen/edge_to_edge: + +.. rst-class:: classref-property + +:ref:`bool` **screen/edge_to_edge** :ref:`🔗` + +If ``true``, this makes the navigation and status bars translucent and allows the application content to extend edge to edge. + +\ **Note:** You should ensure that none of the application content is occluded by system elements by using the :ref:`DisplayServer.get_display_safe_area()` and :ref:`DisplayServer.get_display_cutouts()` methods. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformAndroid_property_screen/immersive_mode: .. rst-class:: classref-property diff --git a/classes/class_editorinterface.rst b/classes/class_editorinterface.rst index 9e412ea3e..6ab1f050b 100644 --- a/classes/class_editorinterface.rst +++ b/classes/class_editorinterface.rst @@ -933,8 +933,6 @@ Saves the currently active scene. Returns either :ref:`@GlobalScope.OK` objects. Description ----------- -Gizmo that is used for providing custom visualization and editing (handles and subgizmos) for :ref:`Node3D` objects. Can be overridden to create custom gizmos, but for simple gizmos creating a :ref:`EditorNode3DGizmoPlugin` is usually recommended. +Gizmo that is used for providing custom visualization and editing (handles and subgizmos) for :ref:`Node3D` objects. Can be overridden to create custom gizmos, but for simple gizmos creating an :ref:`EditorNode3DGizmoPlugin` is usually recommended. .. rst-class:: classref-reftable-group diff --git a/classes/class_editorplugin.rst b/classes/class_editorplugin.rst index a4d4e7f74..80f72c544 100644 --- a/classes/class_editorplugin.rst +++ b/classes/class_editorplugin.rst @@ -1309,7 +1309,7 @@ If ``first_priority`` is ``true``, the new import plugin is inserted first in th |void| **add_scene_post_import_plugin**\ (\ scene_import_plugin\: :ref:`EditorScenePostImportPlugin`, first_priority\: :ref:`bool` = false\ ) :ref:`🔗` -Add a :ref:`EditorScenePostImportPlugin`. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs. +Add an :ref:`EditorScenePostImportPlugin`. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs. If ``first_priority`` is ``true``, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins. diff --git a/classes/class_filedialog.rst b/classes/class_filedialog.rst index b5ae4fa0e..d0d281e12 100644 --- a/classes/class_filedialog.rst +++ b/classes/class_filedialog.rst @@ -780,7 +780,7 @@ If ``true``, the dialog will show hidden files. If ``true``, and if supported by the current :ref:`DisplayServer`, OS native dialog will be used instead of custom one. -\ **Note:** On Android, it is only supported when using :ref:`ACCESS_FILESYSTEM`. For access mode :ref:`ACCESS_RESOURCES` and :ref:`ACCESS_USERDATA`, the system will fall back to custom FileDialog. +\ **Note:** On Android, it is only supported for Android 10+ devices and when using :ref:`ACCESS_FILESYSTEM`. For access mode :ref:`ACCESS_RESOURCES` and :ref:`ACCESS_USERDATA`, the system will fall back to custom FileDialog. \ **Note:** On Linux and macOS, sandboxed apps always use native dialogs to access the host file system. diff --git a/classes/class_gradient.rst b/classes/class_gradient.rst index 7fa11e220..31dccf6e9 100644 --- a/classes/class_gradient.rst +++ b/classes/class_gradient.rst @@ -314,7 +314,7 @@ Reverses/mirrors the gradient. :ref:`Color` **sample**\ (\ offset\: :ref:`float`\ ) :ref:`🔗` -Returns the interpolated color specified by ``offset``. +Returns the interpolated color specified by ``offset``. ``offset`` should be between ``0.0`` and ``1.0`` (inclusive). Using a value lower than ``0.0`` will return the same color as ``0.0``, and using a value higher than ``1.0`` will return the same color as ``1.0``. If your input value is not within this range, consider using :ref:`@GlobalScope.remap()` on the input value with output values set to ``0.0`` and ``1.0``. .. rst-class:: classref-item-separator diff --git a/classes/class_graphnode.rst b/classes/class_graphnode.rst index f3796be2c..be035190b 100644 --- a/classes/class_graphnode.rst +++ b/classes/class_graphnode.rst @@ -44,6 +44,8 @@ Properties +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ | :ref:`MouseFilter` | mouse_filter | ``0`` (overrides :ref:`Control`) | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ + | :ref:`FocusMode` | :ref:`slots_focus_mode` | ``3`` | + +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ | :ref:`String` | :ref:`title` | ``""`` | +----------------------------------------------+------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------+ @@ -210,6 +212,29 @@ If ``true``, you can connect ports with different types, even if the connection ---- +.. _class_GraphNode_property_slots_focus_mode: + +.. rst-class:: classref-property + +:ref:`FocusMode` **slots_focus_mode** = ``3`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_slots_focus_mode**\ (\ value\: :ref:`FocusMode`\ ) +- :ref:`FocusMode` **get_slots_focus_mode**\ (\ ) + +Determines how connection slots can be focused. + +- If set to :ref:`Control.FOCUS_CLICK`, connections can only be made with the mouse. + +- If set to :ref:`Control.FOCUS_ALL`, slots can also be focused using the :ref:`ProjectSettings.input/ui_up` and :ref:`ProjectSettings.input/ui_down` and connected using :ref:`ProjectSettings.input/ui_left` and :ref:`ProjectSettings.input/ui_right` input actions. + +- If set to :ref:`Control.FOCUS_ACCESSIBILITY`, slot input actions are only enabled when the screen reader is active. + +.. rst-class:: classref-item-separator + +---- + .. _class_GraphNode_property_title: .. rst-class:: classref-property diff --git a/classes/class_httpclient.rst b/classes/class_httpclient.rst index 2a9cb9135..ead2ce315 100644 --- a/classes/class_httpclient.rst +++ b/classes/class_httpclient.rst @@ -25,7 +25,7 @@ See the :ref:`HTTPRequest` node for a higher-level alternativ \ **Note:** This client only needs to connect to a host once (see :ref:`connect_to_host()`) to send multiple requests. Because of this, methods that take URLs usually take just the part after the host instead of the full URL, as the client is already connected to a host. See :ref:`request()` for a full example and to get started. -A **HTTPClient** should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports Transport Layer Security (TLS), including server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. +An **HTTPClient** should be reused between multiple requests or to connect to different hosts instead of creating one client per request. Supports Transport Layer Security (TLS), including server certificate verification. HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "try again, but over here"), 4xx something was wrong with the request, and 5xx something went wrong on the server's side. For more information on HTTP, see `MDN's documentation on HTTP `__ (or read `RFC 2616 `__ to get it straight from the source). diff --git a/classes/class_httprequest.rst b/classes/class_httprequest.rst index 1b76970d5..833f6eed2 100644 --- a/classes/class_httprequest.rst +++ b/classes/class_httprequest.rst @@ -181,7 +181,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content -\ **Note:** **HTTPRequest** nodes will automatically handle decompression of response bodies. A ``Accept-Encoding`` header will be automatically added to each of your requests, unless one is already specified. Any response with a ``Content-Encoding: gzip`` header will automatically be decompressed and delivered to you as uncompressed bytes. +\ **Note:** **HTTPRequest** nodes will automatically handle decompression of response bodies. An ``Accept-Encoding`` header will be automatically added to each of your requests, unless one is already specified. Any response with a ``Content-Encoding: gzip`` header will automatically be decompressed and delivered to you as uncompressed bytes. .. rst-class:: classref-introduction-group diff --git a/classes/class_navigationagent2d.rst b/classes/class_navigationagent2d.rst index c6cd104a3..7ccdb817a 100644 --- a/classes/class_navigationagent2d.rst +++ b/classes/class_navigationagent2d.rst @@ -27,6 +27,8 @@ Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is comput \ **Note:** After setting the :ref:`target_position` property, the :ref:`get_next_path_position()` method must be used once every physics frame to update the internal path logic of the navigation agent. The vector position it returns should be used as the next movement position for the agent's parent node. +\ **Note:** Several methods of this class, such as :ref:`get_next_path_position()`, can trigger a new path calculation. Calling these in your callback to an agent's signal, such as :ref:`waypoint_reached`, can cause infinite recursion. It is recommended to call these methods in the physics step or, alternatively, delay their call until the end of the frame (see :ref:`Object.call_deferred()` or :ref:`Object.CONNECT_DEFERRED`). + .. rst-class:: classref-introduction-group Tutorials diff --git a/classes/class_navigationagent3d.rst b/classes/class_navigationagent3d.rst index 0ed507c98..a1a47913d 100644 --- a/classes/class_navigationagent3d.rst +++ b/classes/class_navigationagent3d.rst @@ -27,6 +27,8 @@ Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is comput \ **Note:** After setting the :ref:`target_position` property, the :ref:`get_next_path_position()` method must be used once every physics frame to update the internal path logic of the navigation agent. The vector position it returns should be used as the next movement position for the agent's parent node. +\ **Note:** Several methods of this class, such as :ref:`get_next_path_position()`, can trigger a new path calculation. Calling these in your callback to an agent's signal, such as :ref:`waypoint_reached`, can cause infinite recursion. It is recommended to call these methods in the physics step or, alternatively, delay their call until the end of the frame (see :ref:`Object.call_deferred()` or :ref:`Object.CONNECT_DEFERRED`). + .. rst-class:: classref-introduction-group Tutorials diff --git a/classes/class_navigationmeshsourcegeometrydata3d.rst b/classes/class_navigationmeshsourcegeometrydata3d.rst index 95d1f2bf2..76f67f6aa 100644 --- a/classes/class_navigationmeshsourcegeometrydata3d.rst +++ b/classes/class_navigationmeshsourcegeometrydata3d.rst @@ -116,7 +116,7 @@ Adds an :ref:`Array` the size of :ref:`Mesh.ARRAY_MAX`, elevation\: :ref:`float`, height\: :ref:`float`, carve\: :ref:`bool`\ ) :ref:`🔗` -Adds a projected obstruction shape to the source geometry. The ``vertices`` are considered projected on a xz-axes plane, placed at the global y-axis ``elevation`` and extruded by ``height``. If ``carve`` is ``true`` the carved shape will not be affected by additional offsets (e.g. agent radius) of the navigation mesh baking process. +Adds a projected obstruction shape to the source geometry. The ``vertices`` are considered projected on an xz-axes plane, placed at the global y-axis ``elevation`` and extruded by ``height``. If ``carve`` is ``true`` the carved shape will not be affected by additional offsets (e.g. agent radius) of the navigation mesh baking process. .. rst-class:: classref-item-separator diff --git a/classes/class_navigationserver2d.rst b/classes/class_navigationserver2d.rst index 6e8f467dc..1667c74a9 100644 --- a/classes/class_navigationserver2d.rst +++ b/classes/class_navigationserver2d.rst @@ -195,6 +195,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`map_get_links`\ (\ map\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`map_get_merge_rasterizer_cell_scale`\ (\ map\: :ref:`RID`\ ) |const| | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`RID`\] | :ref:`map_get_obstacles`\ (\ map\: :ref:`RID`\ ) |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedVector2Array` | :ref:`map_get_path`\ (\ map\: :ref:`RID`, origin\: :ref:`Vector2`, destination\: :ref:`Vector2`, optimize\: :ref:`bool`, navigation_layers\: :ref:`int` = 1\ ) | @@ -217,6 +219,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_link_connection_radius`\ (\ map\: :ref:`RID`, radius\: :ref:`float`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`map_set_merge_rasterizer_cell_scale`\ (\ map\: :ref:`RID`, scale\: :ref:`float`\ ) | + +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_use_async_iterations`\ (\ map\: :ref:`RID`, enabled\: :ref:`bool`\ ) | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`map_set_use_edge_connections`\ (\ map\: :ref:`RID`, enabled\: :ref:`bool`\ ) | @@ -1327,6 +1331,18 @@ Returns all navigation link :ref:`RID`\ s that are currently assigned ---- +.. _class_NavigationServer2D_method_map_get_merge_rasterizer_cell_scale: + +.. rst-class:: classref-method + +:ref:`float` **map_get_merge_rasterizer_cell_scale**\ (\ map\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns map's internal merge rasterizer cell scale. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_map_get_obstacles: .. rst-class:: classref-method @@ -1463,6 +1479,18 @@ Set the map's link connection radius used to connect links to navigation polygon ---- +.. _class_NavigationServer2D_method_map_set_merge_rasterizer_cell_scale: + +.. rst-class:: classref-method + +|void| **map_set_merge_rasterizer_cell_scale**\ (\ map\: :ref:`RID`, scale\: :ref:`float`\ ) :ref:`🔗` + +Set the map's internal merge rasterizer cell scale used to control merging sensitivity. + +.. rst-class:: classref-item-separator + +---- + .. _class_NavigationServer2D_method_map_set_use_async_iterations: .. rst-class:: classref-method diff --git a/classes/class_node.rst b/classes/class_node.rst index a880371b5..6b4a7b89a 100644 --- a/classes/class_node.rst +++ b/classes/class_node.rst @@ -2156,7 +2156,7 @@ Fetches a node and its most nested resource as specified by the :ref:`NodePath`, referring to an existing, non-:ref:`Resource` property (see :ref:`Object.get_indexed()`). -\ **Example:** Assume that the child's :ref:`Sprite2D.texture` has been assigned a :ref:`AtlasTexture`: +\ **Example:** Assume that the child's :ref:`Sprite2D.texture` has been assigned an :ref:`AtlasTexture`: .. tabs:: @@ -3127,7 +3127,7 @@ If set to ``true``, enables unhandled key input processing. |void| **set_scene_instance_load_placeholder**\ (\ load_placeholder\: :ref:`bool`\ ) :ref:`🔗` -If set to ``true``, the node becomes a :ref:`InstancePlaceholder` when packed and instantiated from a :ref:`PackedScene`. See also :ref:`get_scene_instance_load_placeholder()`. +If set to ``true``, the node becomes an :ref:`InstancePlaceholder` when packed and instantiated from a :ref:`PackedScene`. See also :ref:`get_scene_instance_load_placeholder()`. .. rst-class:: classref-item-separator diff --git a/classes/class_object.rst b/classes/class_object.rst index c8111da69..528c71512 100644 --- a/classes/class_object.rst +++ b/classes/class_object.rst @@ -332,7 +332,9 @@ Method Descriptions Override this method to customize the behavior of :ref:`get()`. Should return the given ``property``'s value, or ``null`` if the ``property`` should be handled normally. -Combined with :ref:`_set()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property must be present in :ref:`get_property_list()`, otherwise this method will not be called. +Combined with :ref:`_set()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. + +\ **Note:** This method is not called when getting built-in properties of an object, including properties defined with :ref:`@GDScript.@export`. .. tabs:: @@ -661,7 +663,9 @@ Override this method to customize the given ``property``'s revert behavior. Shou Override this method to customize the behavior of :ref:`set()`. Should set the ``property`` to ``value`` and return ``true``, or ``false`` if the ``property`` should be handled normally. The *exact* way to set the ``property`` is up to this method's implementation. -Combined with :ref:`_get()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property *must* be present in :ref:`get_property_list()`, otherwise this method will not be called. +Combined with :ref:`_get()` and :ref:`_get_property_list()`, this method allows defining custom properties, which is particularly useful for editor plugins. + +\ **Note:** This method is not called when setting built-in properties of an object, including properties defined with :ref:`@GDScript.@export`. .. tabs:: diff --git a/classes/class_openxrapiextension.rst b/classes/class_openxrapiextension.rst index db081a339..fdf917db2 100644 --- a/classes/class_openxrapiextension.rst +++ b/classes/class_openxrapiextension.rst @@ -420,7 +420,7 @@ Returns the name of the specified swapchain format. :ref:`int` **get_system_id**\ (\ ) :ref:`🔗` -Returns the id of the system, which is a `XrSystemId `__ cast to an integer. +Returns the id of the system, which is an `XrSystemId `__ cast to an integer. .. rst-class:: classref-item-separator diff --git a/classes/class_openxrbindingmodifier.rst b/classes/class_openxrbindingmodifier.rst index afc99cfd8..da18219fa 100644 --- a/classes/class_openxrbindingmodifier.rst +++ b/classes/class_openxrbindingmodifier.rst @@ -66,7 +66,7 @@ Return the description of this class that is used for the title bar of the bindi Returns the data that is sent to OpenXR when submitting the suggested interacting bindings this modifier is a part of. -\ **Note:** This must be data compatible with a ``XrBindingModificationBaseHeaderKHR`` structure. +\ **Note:** This must be data compatible with an ``XrBindingModificationBaseHeaderKHR`` structure. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_openxrinteractionprofilemetadata.rst b/classes/class_openxrinteractionprofilemetadata.rst index 62b63b448..fae072322 100644 --- a/classes/class_openxrinteractionprofilemetadata.rst +++ b/classes/class_openxrinteractionprofilemetadata.rst @@ -96,7 +96,7 @@ Registers a top level path to which profiles can be bound. For instance ``/user/ \ ``display_name`` is the name shown to the user. ``openxr_path`` is the top level path being registered. ``openxr_extension_name`` is optional and ensures the top level path is only used if the specified extension is available/enabled. -When a top level path ends up being bound by OpenXR, a :ref:`XRPositionalTracker` is instantiated to manage the state of the device. +When a top level path ends up being bound by OpenXR, an :ref:`XRPositionalTracker` is instantiated to manage the state of the device. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_openxrrendermodelextension.rst b/classes/class_openxrrendermodelextension.rst index e45f72b02..de91118cc 100644 --- a/classes/class_openxrrendermodelextension.rst +++ b/classes/class_openxrrendermodelextension.rst @@ -241,7 +241,7 @@ Returns a list of active subaction paths for this ``render_model``. :ref:`String` **render_model_get_top_level_path**\ (\ render_model\: :ref:`RID`\ ) |const| :ref:`🔗` -Returns the top level path associated with this ``render_model``. If provided this identifies whether the render model is associated with the players hands or other body part. +Returns the top level path associated with this ``render_model``. If provided this identifies whether the render model is associated with the player's hands or other body part. .. rst-class:: classref-item-separator diff --git a/classes/class_optionbutton.rst b/classes/class_optionbutton.rst index b153030f1..7b15b2510 100644 --- a/classes/class_optionbutton.rst +++ b/classes/class_optionbutton.rst @@ -26,7 +26,7 @@ Description See also :ref:`BaseButton` which contains common properties and methods associated with this node. -\ **Note:** The ID values used for items are limited to 32 bits, not full 64 bits of :ref:`int`. This has a range of ``-2^32`` to ``2^32 - 1``, i.e. ``-2147483648`` to ``2147483647``. +\ **Note:** The IDs used for items are limited to signed 32-bit integers, not the full 64 bits of :ref:`int`. These have a range of ``-2^31`` to ``2^31 - 1``, that is, ``-2147483648`` to ``2147483647``. \ **Note:** The :ref:`Button.text` and :ref:`Button.icon` properties are set automatically based on the selected item. They shouldn't be changed manually. diff --git a/classes/class_os.rst b/classes/class_os.rst index f55b48143..87e776c4b 100644 --- a/classes/class_os.rst +++ b/classes/class_os.rst @@ -939,6 +939,8 @@ On Android devices: Returns the list of dangerous permissions that have been gra On macOS: Returns the list of granted permissions and user selected folders accessible to the application (sandboxed applications only). Use the native file dialog to request folder access permission. +On iOS, visionOS: Returns the list of granted permissions. + .. rst-class:: classref-item-separator ---- @@ -1703,7 +1705,7 @@ Opens one or more files/directories with the specified application. The ``progra \ **Note:** This method is mostly only relevant for macOS, where opening files using :ref:`create_process()` might fail. On other platforms, this falls back to using :ref:`create_process()`. -\ **Note:** On macOS, ``program_path`` should ideally be the path to an ``.app`` bundle. +\ **Note:** On macOS, ``program_path`` should ideally be the path to a ``.app`` bundle. .. rst-class:: classref-item-separator @@ -1783,9 +1785,11 @@ The ``name`` must be the full permission name. For example: - ``OS.request_permission("macos.permission.RECORD_SCREEN")``\ +- ``OS.request_permission("appleembedded.permission.AUDIO_RECORD")``\ + \ **Note:** On Android, permission must be checked during export. -\ **Note:** This method is implemented on Android and macOS. +\ **Note:** This method is implemented on Android, macOS, and visionOS platforms. .. rst-class:: classref-item-separator diff --git a/classes/class_performance.rst b/classes/class_performance.rst index 96db9ab80..99ca5a469 100644 --- a/classes/class_performance.rst +++ b/classes/class_performance.rst @@ -362,7 +362,7 @@ Number of pipeline compilations that were triggered by loading meshes. These com :ref:`Monitor` **PIPELINE_COMPILATIONS_SURFACE** = ``36`` -Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading an scene the first time a user runs the game and the pipeline is required. +Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading a scene the first time a user runs the game and the pipeline is required. .. _class_Performance_constant_PIPELINE_COMPILATIONS_DRAW: diff --git a/classes/class_projectsettings.rst b/classes/class_projectsettings.rst index 46b077855..c59e9d34b 100644 --- a/classes/class_projectsettings.rst +++ b/classes/class_projectsettings.rst @@ -193,8 +193,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/confusable_local_usage` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/constant_used_as_function` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/deprecated_keyword` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/empty_file` | ``1`` | @@ -205,8 +203,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/gdscript/warnings/exclude_addons` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/function_used_as_property` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/get_node_default_without_onready` | ``2`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/incompatible_ternary` | ``1`` | @@ -229,8 +225,6 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/onready_with_export` | ``2`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ - | :ref:`int` | :ref:`debug/gdscript/warnings/property_used_as_function` | ``1`` | - +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/redundant_await` | ``1`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/gdscript/warnings/redundant_static_unload` | ``1`` | @@ -1271,6 +1265,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`navigation/2d/default_link_connection_radius` | ``4.0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`navigation/2d/merge_rasterizer_cell_scale` | ``1.0`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`navigation/2d/use_edge_connections` | ``true`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`navigation/3d/default_cell_height` | ``0.25`` | @@ -2904,20 +2900,6 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/constant_used_as_function: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/constant_used_as_function** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. Instead, an error is generated if the expression type is known at compile time. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when a constant is used as a function. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/deprecated_keyword: .. rst-class:: classref-property @@ -2980,20 +2962,6 @@ If ``true``, scripts in the ``res://addons`` folder will not generate warnings. ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/function_used_as_property: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/function_used_as_property** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. When a function is used as a property, a :ref:`Callable` is returned. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when using a function as if it is a property. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/get_node_default_without_onready: .. rst-class:: classref-property @@ -3128,20 +3096,6 @@ When set to ``warn`` or ``error``, produces a warning or an error respectively w ---- -.. _class_ProjectSettings_property_debug/gdscript/warnings/property_used_as_function: - -.. rst-class:: classref-property - -:ref:`int` **debug/gdscript/warnings/property_used_as_function** = ``1`` :ref:`🔗` - -**Deprecated:** This warning is never produced. Instead, an error is generated if the expression type is known at compile time. - -When set to ``warn`` or ``error``, produces a warning or an error respectively when using a property as if it is a function. - -.. rst-class:: classref-item-separator - ----- - .. _class_ProjectSettings_property_debug/gdscript/warnings/redundant_await: .. rst-class:: classref-property @@ -9734,6 +9688,18 @@ Default link connection radius for 2D navigation maps. See :ref:`NavigationServe ---- +.. _class_ProjectSettings_property_navigation/2d/merge_rasterizer_cell_scale: + +.. rst-class:: classref-property + +:ref:`float` **navigation/2d/merge_rasterizer_cell_scale** = ``1.0`` :ref:`🔗` + +Default merge rasterizer cell scale for 2D navigation maps. See :ref:`NavigationServer2D.map_set_merge_rasterizer_cell_scale()`. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_navigation/2d/use_edge_connections: .. rst-class:: classref-property @@ -13468,7 +13434,7 @@ The default compression factor for lossless WebP. Decompression speed is mostly :ref:`bool` **rendering/viewport/hdr_2d** = ``false`` :ref:`🔗` -If ``true``, enables :ref:`Viewport.use_hdr_2d` on the root viewport. 2D rendering will use an high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen. Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. +If ``true``, enables :ref:`Viewport.use_hdr_2d` on the root viewport. 2D rendering will use a high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen. Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. \ **Note:** This setting will have no effect when using the Compatibility renderer, which always renders in low dynamic range for performance reasons. diff --git a/classes/class_raycast2d.rst b/classes/class_raycast2d.rst index ca013ca6f..91f3ae4bb 100644 --- a/classes/class_raycast2d.rst +++ b/classes/class_raycast2d.rst @@ -12,14 +12,14 @@ RayCast2D **Inherits:** :ref:`Node2D` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` -A ray in 2D space, used to find the first :ref:`CollisionObject2D` it intersects. +A ray in 2D space, used to find the first collision object it intersects. .. rst-class:: classref-introduction-group Description ----------- -A raycast represents a ray from its origin to its :ref:`target_position` that finds the closest :ref:`CollisionObject2D` along its path, if it intersects any. +A raycast represents a ray from its origin to its :ref:`target_position` that finds the closest object along its path, if it intersects any. \ **RayCast2D** can ignore some objects by adding them to an exception list, by making its detection reporting ignore :ref:`Area2D`\ s (:ref:`collide_with_areas`) or :ref:`PhysicsBody2D`\ s (:ref:`collide_with_bodies`), or by configuring physics layers. @@ -184,7 +184,7 @@ If ``true``, collisions will be reported. - |void| **set_exclude_parent_body**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_exclude_parent_body**\ (\ ) -If ``true``, the parent node will be excluded from collision detection. +If ``true``, this raycast will not report collisions with its parent node. This property only has an effect if the parent node is a :ref:`CollisionObject2D`. See also :ref:`Node.get_parent()` and :ref:`add_exception()`. .. rst-class:: classref-item-separator @@ -218,7 +218,7 @@ If ``true``, the ray will detect a hit when starting inside shapes. In this case - |void| **set_target_position**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_target_position**\ (\ ) -The ray's destination point, relative to the RayCast's ``position``. +The ray's destination point, relative to this raycast's :ref:`Node2D.position`. .. rst-class:: classref-section-separator @@ -235,7 +235,7 @@ Method Descriptions |void| **add_exception**\ (\ node\: :ref:`CollisionObject2D`\ ) :ref:`🔗` -Adds a collision exception so the ray does not report collisions with the specified :ref:`CollisionObject2D` node. +Adds a collision exception so the ray does not report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -287,6 +287,8 @@ Updates the collision information for the ray immediately, without waiting for t Returns the first object that the ray intersects, or ``null`` if no object is intersecting the ray (i.e. :ref:`is_colliding()` returns ``false``). +\ **Note:** This object is not guaranteed to be a :ref:`CollisionObject2D`. For example, if the ray intersects a :ref:`TileMapLayer`, the method will return a :ref:`TileMapLayer` instance. + .. rst-class:: classref-item-separator ---- @@ -394,7 +396,7 @@ Returns whether any object is intersecting with the ray's vector (considering th |void| **remove_exception**\ (\ node\: :ref:`CollisionObject2D`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`CollisionObject2D` node. +Removes a collision exception so the ray can report collisions with the specified specified ``node``. .. rst-class:: classref-item-separator @@ -406,7 +408,7 @@ Removes a collision exception so the ray does report collisions with the specifi |void| **remove_exception_rid**\ (\ rid\: :ref:`RID`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`RID`. +Removes a collision exception so the ray can report collisions with the specified :ref:`RID`. .. rst-class:: classref-item-separator diff --git a/classes/class_raycast3d.rst b/classes/class_raycast3d.rst index c08d4d125..b3f015053 100644 --- a/classes/class_raycast3d.rst +++ b/classes/class_raycast3d.rst @@ -12,7 +12,7 @@ RayCast3D **Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -A ray in 3D space, used to find the first object it intersects. +A ray in 3D space, used to find the first collision object it intersects. .. rst-class:: classref-introduction-group @@ -230,7 +230,7 @@ If ``true``, collisions will be reported. - |void| **set_exclude_parent_body**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_exclude_parent_body**\ (\ ) -If ``true``, collisions will be ignored for this RayCast3D's immediate parent. +If ``true``, this raycast will not report collisions with its parent node. This property only has an effect if the parent node is a :ref:`CollisionObject3D`. See also :ref:`Node.get_parent()` and :ref:`add_exception()`. .. rst-class:: classref-item-separator @@ -281,7 +281,7 @@ If ``true``, the ray will detect a hit when starting inside shapes. In this case - |void| **set_target_position**\ (\ value\: :ref:`Vector3`\ ) - :ref:`Vector3` **get_target_position**\ (\ ) -The ray's destination point, relative to the RayCast's ``position``. +The ray's destination point, relative to this raycast's :ref:`Node3D.position`. .. rst-class:: classref-section-separator @@ -298,7 +298,7 @@ Method Descriptions |void| **add_exception**\ (\ node\: :ref:`CollisionObject3D`\ ) :ref:`🔗` -Adds a collision exception so the ray does not report collisions with the specified :ref:`CollisionObject3D` node. +Adds a collision exception so the ray does not report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -471,7 +471,7 @@ Returns whether any object is intersecting with the ray's vector (considering th |void| **remove_exception**\ (\ node\: :ref:`CollisionObject3D`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`CollisionObject3D` node. +Removes a collision exception so the ray can report collisions with the specified ``node``. .. rst-class:: classref-item-separator @@ -483,7 +483,7 @@ Removes a collision exception so the ray does report collisions with the specifi |void| **remove_exception_rid**\ (\ rid\: :ref:`RID`\ ) :ref:`🔗` -Removes a collision exception so the ray does report collisions with the specified :ref:`RID`. +Removes a collision exception so the ray can report collisions with the specified :ref:`RID`. .. rst-class:: classref-item-separator diff --git a/classes/class_rdshaderspirv.rst b/classes/class_rdshaderspirv.rst index 7a37b4997..aa16f7dee 100644 --- a/classes/class_rdshaderspirv.rst +++ b/classes/class_rdshaderspirv.rst @@ -12,14 +12,14 @@ RDShaderSPIRV **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -SPIR-V intermediate representation as part of a :ref:`RDShaderFile` (used by :ref:`RenderingDevice`). +SPIR-V intermediate representation as part of an :ref:`RDShaderFile` (used by :ref:`RenderingDevice`). .. rst-class:: classref-introduction-group Description ----------- -**RDShaderSPIRV** represents a :ref:`RDShaderFile`'s `SPIR-V `__ code for various shader stages, as well as possible compilation error messages. SPIR-V is a low-level intermediate shader representation. This intermediate representation is not used directly by GPUs for rendering, but it can be compiled into binary shaders that GPUs can understand. Unlike compiled shaders, SPIR-V is portable across GPU models and driver versions. +**RDShaderSPIRV** represents an :ref:`RDShaderFile`'s `SPIR-V `__ code for various shader stages, as well as possible compilation error messages. SPIR-V is a low-level intermediate shader representation. This intermediate representation is not used directly by GPUs for rendering, but it can be compiled into binary shaders that GPUs can understand. Unlike compiled shaders, SPIR-V is portable across GPU models and driver versions. This object is used by :ref:`RenderingDevice`. diff --git a/classes/class_renderingdevice.rst b/classes/class_renderingdevice.rst index 8854d9d8e..e5c7475f2 100644 --- a/classes/class_renderingdevice.rst +++ b/classes/class_renderingdevice.rst @@ -3055,7 +3055,7 @@ Return a floating-point transparent black color when sampling outside the ``[0.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_TRANSPARENT_BLACK** = ``1`` -Return a integer transparent black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer transparent black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_BLACK: @@ -3071,7 +3071,7 @@ Return a floating-point opaque black color when sampling outside the ``[0.0, 1.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_OPAQUE_BLACK** = ``3`` -Return a integer opaque black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer opaque black color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_WHITE: @@ -3087,7 +3087,7 @@ Return a floating-point opaque white color when sampling outside the ``[0.0, 1.0 :ref:`SamplerBorderColor` **SAMPLER_BORDER_COLOR_INT_OPAQUE_WHITE** = ``5`` -Return a integer opaque white color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. +Return an integer opaque white color when sampling outside the ``[0.0, 1.0]`` range. Only effective if the sampler repeat mode is :ref:`SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER`. .. _class_RenderingDevice_constant_SAMPLER_BORDER_COLOR_MAX: @@ -6426,7 +6426,7 @@ Compiles a binary shader from ``spirv_data`` and returns the compiled binary dat :ref:`RDShaderSPIRV` **shader_compile_spirv_from_source**\ (\ shader_source\: :ref:`RDShaderSource`, allow_cache\: :ref:`bool` = true\ ) :ref:`🔗` -Compiles a SPIR-V from the shader source code in ``shader_source`` and returns the SPIR-V as a :ref:`RDShaderSPIRV`. This intermediate language shader is portable across different GPU models and driver versions, but cannot be run directly by GPUs until compiled into a binary shader using :ref:`shader_compile_binary_from_spirv()`. +Compiles a SPIR-V from the shader source code in ``shader_source`` and returns the SPIR-V as an :ref:`RDShaderSPIRV`. This intermediate language shader is portable across different GPU models and driver versions, but cannot be run directly by GPUs until compiled into a binary shader using :ref:`shader_compile_binary_from_spirv()`. If ``allow_cache`` is ``true``, make use of the shader cache generated by Godot. This avoids a potentially lengthy shader compilation step if the shader is already in cache. If ``allow_cache`` is ``false``, Godot's shader cache is ignored and the shader will always be recompiled. @@ -6646,9 +6646,9 @@ For 2D textures (which only have one layer), ``layer`` must be ``0``. Returns the ``texture`` data for the specified ``layer`` as raw binary data. For 2D textures (which only have one layer), ``layer`` must be ``0``. -\ **Note:** ``texture`` can't be retrieved while a draw list that uses it as part of a framebuffer is being created. Ensure the draw list is finalized (and that the color/depth texture using it is not set to :ref:`FINAL_ACTION_CONTINUE`) to retrieve this texture. Otherwise, an error is printed and a empty :ref:`PackedByteArray` is returned. +\ **Note:** ``texture`` can't be retrieved while a draw list that uses it as part of a framebuffer is being created. Ensure the draw list is finalized (and that the color/depth texture using it is not set to :ref:`FINAL_ACTION_CONTINUE`) to retrieve this texture. Otherwise, an error is printed and an empty :ref:`PackedByteArray` is returned. -\ **Note:** ``texture`` requires the :ref:`TEXTURE_USAGE_CAN_COPY_FROM_BIT` to be retrieved. Otherwise, an error is printed and a empty :ref:`PackedByteArray` is returned. +\ **Note:** ``texture`` requires the :ref:`TEXTURE_USAGE_CAN_COPY_FROM_BIT` to be retrieved. Otherwise, an error is printed and an empty :ref:`PackedByteArray` is returned. \ **Note:** This method will block the GPU from working until the data is retrieved. Refer to :ref:`texture_get_data_async()` for an alternative that returns the data in more performant way. diff --git a/classes/class_renderingserver.rst b/classes/class_renderingserver.rst index 1b28573f1..c25d74758 100644 --- a/classes/class_renderingserver.rst +++ b/classes/class_renderingserver.rst @@ -5722,7 +5722,7 @@ Cubemap sampler global shader parameter (``global uniform samplerCube ...``). Ex :ref:`GlobalShaderParameterType` **GLOBAL_VAR_TYPE_SAMPLEREXT** = ``28`` -External sampler global shader parameter (``global uniform samplerExternalOES ...``). Exposed as a :ref:`ExternalTexture` in the editor UI. +External sampler global shader parameter (``global uniform samplerExternalOES ...``). Exposed as an :ref:`ExternalTexture` in the editor UI. .. _class_RenderingServer_constant_GLOBAL_VAR_TYPE_MAX: @@ -5812,7 +5812,7 @@ Number of pipeline compilations that were triggered by loading meshes. These com :ref:`RenderingInfo` **RENDERING_INFO_PIPELINE_COMPILATIONS_SURFACE** = ``8`` -Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading an scene the first time a user runs the game and the pipeline is required. +Number of pipeline compilations that were triggered by building the surface cache before rendering the scene. These compilations will show up as a stutter when loading a scene the first time a user runs the game and the pipeline is required. .. _class_RenderingServer_constant_RENDERING_INFO_PIPELINE_COMPILATIONS_DRAW: @@ -6142,7 +6142,7 @@ Bakes the material data of the Mesh passed in the ``base`` parameter with option |void| **call_on_render_thread**\ (\ callable\: :ref:`Callable`\ ) :ref:`🔗` -As the RenderingServer actual logic may run on an separate thread, accessing its internals from the main (or any other) thread will result in errors. To make it easier to run code that can safely access the rendering internals (such as :ref:`RenderingDevice` and similar RD classes), push a callable via this function so it will be executed on the render thread. +As the RenderingServer actual logic may run on a separate thread, accessing its internals from the main (or any other) thread will result in errors. To make it easier to run code that can safely access the rendering internals (such as :ref:`RenderingDevice` and similar RD classes), push a callable via this function so it will be executed on the render thread. .. rst-class:: classref-item-separator diff --git a/classes/class_renderscenebuffers.rst b/classes/class_renderscenebuffers.rst index 828062592..5288f4236 100644 --- a/classes/class_renderscenebuffers.rst +++ b/classes/class_renderscenebuffers.rst @@ -52,7 +52,7 @@ Method Descriptions |void| **configure**\ (\ config\: :ref:`RenderSceneBuffersConfiguration`\ ) :ref:`🔗` -This method is called by the rendering server when the associated viewports configuration is changed. It will discard the old buffers and recreate the internal buffers used. +This method is called by the rendering server when the associated viewport's configuration is changed. It will discard the old buffers and recreate the internal buffers used. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_resource.rst b/classes/class_resource.rst index 2673a2951..2562b568a 100644 --- a/classes/class_resource.rst +++ b/classes/class_resource.rst @@ -64,41 +64,41 @@ Methods .. table:: :widths: auto - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`_get_rid`\ (\ ) |virtual| |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_reset_state`\ (\ ) |virtual| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_set_path_cache`\ (\ path\: :ref:`String`\ ) |virtual| |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`_setup_local_to_scene`\ (\ ) |virtual| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Resource` | :ref:`duplicate`\ (\ deep\: :ref:`bool` = false\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Resource` | :ref:`duplicate_deep`\ (\ deep_subresources_mode\: :ref:`ResourceDeepDuplicateMode` = 1\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`emit_changed`\ (\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`generate_scene_unique_id`\ (\ ) |static| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`String` | :ref:`get_id_for_path`\ (\ path\: :ref:`String`\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Node` | :ref:`get_local_scene`\ (\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`is_built_in`\ (\ ) |const| | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`reset_state`\ (\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_id_for_path`\ (\ path\: :ref:`String`, id\: :ref:`String`\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`set_path_cache`\ (\ path\: :ref:`String`\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`setup_local_to_scene`\ (\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | |void| | :ref:`take_over_path`\ (\ path\: :ref:`String`\ ) | - +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`_get_rid`\ (\ ) |virtual| |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_reset_state`\ (\ ) |virtual| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_set_path_cache`\ (\ path\: :ref:`String`\ ) |virtual| |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_setup_local_to_scene`\ (\ ) |virtual| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Resource` | :ref:`duplicate`\ (\ deep\: :ref:`bool` = false\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Resource` | :ref:`duplicate_deep`\ (\ deep_subresources_mode\: :ref:`DeepDuplicateMode` = 1\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`emit_changed`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`generate_scene_unique_id`\ (\ ) |static| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_id_for_path`\ (\ path\: :ref:`String`\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Node` | :ref:`get_local_scene`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`RID` | :ref:`get_rid`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`is_built_in`\ (\ ) |const| | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`reset_state`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_id_for_path`\ (\ path\: :ref:`String`, id\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_path_cache`\ (\ path\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`setup_local_to_scene`\ (\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`take_over_path`\ (\ path\: :ref:`String`\ ) | + +---------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -142,33 +142,33 @@ Emitted by a newly duplicated resource with :ref:`resource_local_to_scene` +enum **DeepDuplicateMode**: :ref:`🔗` -.. _class_Resource_constant_RESOURCE_DEEP_DUPLICATE_NONE: +.. _class_Resource_constant_DEEP_DUPLICATE_NONE: .. rst-class:: classref-enumeration-constant -:ref:`ResourceDeepDuplicateMode` **RESOURCE_DEEP_DUPLICATE_NONE** = ``0`` +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_NONE** = ``0`` No subresorces at all are duplicated. This is useful even in a deep duplication to have all the arrays and dictionaries duplicated but still pointing to the original resources. -.. _class_Resource_constant_RESOURCE_DEEP_DUPLICATE_INTERNAL: +.. _class_Resource_constant_DEEP_DUPLICATE_INTERNAL: .. rst-class:: classref-enumeration-constant -:ref:`ResourceDeepDuplicateMode` **RESOURCE_DEEP_DUPLICATE_INTERNAL** = ``1`` +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_INTERNAL** = ``1`` Only subresources without a path or with a scene-local path will be duplicated. -.. _class_Resource_constant_RESOURCE_DEEP_DUPLICATE_ALL: +.. _class_Resource_constant_DEEP_DUPLICATE_ALL: .. rst-class:: classref-enumeration-constant -:ref:`ResourceDeepDuplicateMode` **RESOURCE_DEEP_DUPLICATE_ALL** = ``2`` +:ref:`DeepDuplicateMode` **DEEP_DUPLICATE_ALL** = ``2`` Every subresource found will be duplicated, even if it has a non-local path. In other words, even potentially big resources stored separately will be duplicated. @@ -249,7 +249,7 @@ The unique path to this resource. If it has been saved to disk, the value will b - |void| **set_scene_unique_id**\ (\ value\: :ref:`String`\ ) - :ref:`String` **get_scene_unique_id**\ (\ ) -An unique identifier relative to the this resource's scene. If left empty, the ID is automatically generated when this resource is saved inside a :ref:`PackedScene`. If the resource is not inside a scene, this property is empty by default. +A unique identifier relative to the this resource's scene. If left empty, the ID is automatically generated when this resource is saved inside a :ref:`PackedScene`. If the resource is not inside a scene, this property is empty by default. \ **Note:** When the :ref:`PackedScene` is saved, if multiple resources in the same scene use the same ID, only the earliest resource in the scene hierarchy keeps the original ID. The other resources are assigned new IDs from :ref:`generate_scene_unique_id()`. @@ -335,7 +335,7 @@ Duplicates this resource, returning a new resource with its ``export``\ ed or :r If ``deep`` is ``false``, a **shallow** copy is returned: nested :ref:`Array`, :ref:`Dictionary`, and **Resource** properties are not duplicated and are shared with the original resource. -If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays, dictionaries, and packed arrays are also duplicated (recursively). Any **Resource** found inside will only be duplicated if it's local, like :ref:`RESOURCE_DEEP_DUPLICATE_INTERNAL` used with :ref:`duplicate_deep()`. +If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays, dictionaries, and packed arrays are also duplicated (recursively). Any **Resource** found inside will only be duplicated if it's local, like :ref:`DEEP_DUPLICATE_INTERNAL` used with :ref:`duplicate_deep()`. The following exceptions apply: @@ -355,11 +355,11 @@ The following exceptions apply: .. rst-class:: classref-method -:ref:`Resource` **duplicate_deep**\ (\ deep_subresources_mode\: :ref:`ResourceDeepDuplicateMode` = 1\ ) |const| :ref:`🔗` +:ref:`Resource` **duplicate_deep**\ (\ deep_subresources_mode\: :ref:`DeepDuplicateMode` = 1\ ) |const| :ref:`🔗` Duplicates this resource, deeply, like :ref:`duplicate()`\ ``(true)``, with extra control over how subresources are handled. -\ ``deep_subresources_mode`` must be one of the values from :ref:`ResourceDeepDuplicateMode`. +\ ``deep_subresources_mode`` must be one of the values from :ref:`DeepDuplicateMode`. .. rst-class:: classref-item-separator diff --git a/classes/class_resourceimporterimage.rst b/classes/class_resourceimporterimage.rst index a32d1e8a4..fd2fb6b57 100644 --- a/classes/class_resourceimporterimage.rst +++ b/classes/class_resourceimporterimage.rst @@ -12,7 +12,7 @@ ResourceImporterImage **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports a image for use in scripting, with no rendering capabilities. +Imports an image for use in scripting, with no rendering capabilities. .. rst-class:: classref-introduction-group diff --git a/classes/class_resourceimportershaderfile.rst b/classes/class_resourceimportershaderfile.rst index 35e96802c..de6f44554 100644 --- a/classes/class_resourceimportershaderfile.rst +++ b/classes/class_resourceimportershaderfile.rst @@ -12,7 +12,7 @@ ResourceImporterShaderFile **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports native GLSL shaders (not Godot shaders) as a :ref:`RDShaderFile`. +Imports native GLSL shaders (not Godot shaders) as an :ref:`RDShaderFile`. .. rst-class:: classref-introduction-group diff --git a/classes/class_resourceimportersvg.rst b/classes/class_resourceimportersvg.rst index bf117dda8..f01396315 100644 --- a/classes/class_resourceimportersvg.rst +++ b/classes/class_resourceimportersvg.rst @@ -12,7 +12,7 @@ ResourceImporterSVG **Inherits:** :ref:`ResourceImporter` **<** :ref:`RefCounted` **<** :ref:`Object` -Imports a SVG file as a scalable texture for use in 2D or 3D rendering. +Imports an SVG file as a scalable texture for use in 2D or 3D rendering. .. rst-class:: classref-introduction-group diff --git a/classes/class_rid.rst b/classes/class_rid.rst index 51628feb4..4b81dd5cb 100644 --- a/classes/class_rid.rst +++ b/classes/class_rid.rst @@ -102,7 +102,7 @@ Constructs an empty **RID** with the invalid ID ``0``. :ref:`RID` **RID**\ (\ from\: :ref:`RID`\ ) -Constructs a **RID** as a copy of the given **RID**. +Constructs an **RID** as a copy of the given **RID**. .. rst-class:: classref-section-separator diff --git a/classes/class_scripteditor.rst b/classes/class_scripteditor.rst index fd5d6550a..3935635b5 100644 --- a/classes/class_scripteditor.rst +++ b/classes/class_scripteditor.rst @@ -31,6 +31,8 @@ Methods .. table:: :widths: auto + +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`clear_docs_from_script`\ (\ script\: :ref:`Script`\ ) | +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`get_breakpoints`\ (\ ) | +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -93,6 +95,20 @@ Emitted when editor is about to close the active script. Argument is a :ref:`Scr Method Descriptions ------------------- +.. _class_ScriptEditor_method_clear_docs_from_script: + +.. rst-class:: classref-method + +|void| **clear_docs_from_script**\ (\ script\: :ref:`Script`\ ) :ref:`🔗` + +Removes the documentation for the given ``script``. + +\ **Note:** This should be called whenever the script is changed to keep the open documentation state up to date. + +.. rst-class:: classref-item-separator + +---- + .. _class_ScriptEditor_method_get_breakpoints: .. rst-class:: classref-method @@ -246,7 +262,7 @@ Unregisters the :ref:`EditorSyntaxHighlighter` fr |void| **update_docs_from_script**\ (\ script\: :ref:`Script`\ ) :ref:`🔗` -Updates the documentation for the given ``script`` if the script's documentation is currently open. +Updates the documentation for the given ``script``. \ **Note:** This should be called whenever the script is changed to keep the open documentation state up to date. diff --git a/classes/class_scripteditorbase.rst b/classes/class_scripteditorbase.rst index 5c355a803..83a9ef478 100644 --- a/classes/class_scripteditorbase.rst +++ b/classes/class_scripteditorbase.rst @@ -175,7 +175,7 @@ Method Descriptions |void| **add_syntax_highlighter**\ (\ highlighter\: :ref:`EditorSyntaxHighlighter`\ ) :ref:`🔗` -Adds a :ref:`EditorSyntaxHighlighter` to the open script. +Adds an :ref:`EditorSyntaxHighlighter` to the open script. .. rst-class:: classref-item-separator diff --git a/classes/class_springbonecollisioncapsule3d.rst b/classes/class_springbonecollisioncapsule3d.rst index 861452d77..001fb724e 100644 --- a/classes/class_springbonecollisioncapsule3d.rst +++ b/classes/class_springbonecollisioncapsule3d.rst @@ -61,6 +61,8 @@ Property Descriptions The capsule's full height, including the hemispheres. +\ **Note:** The :ref:`height` of a capsule must be at least twice its :ref:`radius`. Otherwise, the capsule becomes a sphere. If the :ref:`height` is less than twice the :ref:`radius`, the properties adjust to a valid value. + .. rst-class:: classref-item-separator ---- @@ -112,6 +114,8 @@ The capsule's height, excluding the hemispheres. This is the height of the centr The capsule's radius. +\ **Note:** The :ref:`radius` of a capsule cannot be greater than half of its :ref:`height`. Otherwise, the capsule becomes a sphere. If the :ref:`radius` is greater than half of the :ref:`height`, the properties adjust to a valid value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_springbonecollisionplane3d.rst b/classes/class_springbonecollisionplane3d.rst index 31b9caf9a..d6cea5aae 100644 --- a/classes/class_springbonecollisionplane3d.rst +++ b/classes/class_springbonecollisionplane3d.rst @@ -12,14 +12,14 @@ SpringBoneCollisionPlane3D **Inherits:** :ref:`SpringBoneCollision3D` **<** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` -A infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. +An infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. .. rst-class:: classref-introduction-group Description ----------- -A infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. It is an infinite size XZ plane, and the +Y direction is treated as normal. +An infinite plane collision that interacts with :ref:`SpringBoneSimulator3D`. It is an infinite size XZ plane, and the +Y direction is treated as normal. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_textmesh.rst b/classes/class_textmesh.rst index 9ffbb5b11..6f54737fc 100644 --- a/classes/class_textmesh.rst +++ b/classes/class_textmesh.rst @@ -12,14 +12,14 @@ TextMesh **Inherits:** :ref:`PrimitiveMesh` **<** :ref:`Mesh` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -Generate an :ref:`PrimitiveMesh` from the text. +Generate a :ref:`PrimitiveMesh` from the text. .. rst-class:: classref-introduction-group Description ----------- -Generate an :ref:`PrimitiveMesh` from the text. +Generate a :ref:`PrimitiveMesh` from the text. TextMesh can be generated only when using dynamic fonts with vector glyph contours. Bitmap fonts (including bitmap data in the TrueType/OpenType containers, like color emoji fonts) are not supported. diff --git a/classes/class_upnp.rst b/classes/class_upnp.rst index 4857fba54..a158cc996 100644 --- a/classes/class_upnp.rst +++ b/classes/class_upnp.rst @@ -186,7 +186,7 @@ Inconsistent parameters. :ref:`UPNPResult` **UPNP_RESULT_NO_SUCH_ENTRY_IN_ARRAY** = ``4`` -No such entry in array. May be returned if a given port, protocol combination is not found on an :ref:`UPNPDevice`. +No such entry in array. May be returned if a given port, protocol combination is not found on a :ref:`UPNPDevice`. .. _class_UPNP_constant_UPNP_RESULT_ACTION_FAILED: diff --git a/classes/class_videostreamtheora.rst b/classes/class_videostreamtheora.rst index 2c7460640..35d6bd879 100644 --- a/classes/class_videostreamtheora.rst +++ b/classes/class_videostreamtheora.rst @@ -21,7 +21,7 @@ Description :ref:`VideoStream` resource handling the `Ogg Theora `__ video format with ``.ogv`` extension. The Theora codec is decoded on the CPU. -\ **Note:** While Ogg Theora videos can also have an ``.ogg`` extension, you will have to rename the extension to ``.ogv`` to use those videos within Godot. +\ **Note:** While Ogg Theora videos can also have a ``.ogg`` extension, you will have to rename the extension to ``.ogv`` to use those videos within Godot. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_viewport.rst b/classes/class_viewport.rst index d0a5d757b..8d6d8e4eb 100644 --- a/classes/class_viewport.rst +++ b/classes/class_viewport.rst @@ -1966,7 +1966,7 @@ See also :ref:`ProjectSettings.rendering/anti_aliasing/quality/use_debanding`\ ) - :ref:`bool` **is_using_hdr_2d**\ (\ ) -If ``true``, 2D rendering will use an high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen (if the Viewport is attached to the screen). Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. +If ``true``, 2D rendering will use a high dynamic range (HDR) format framebuffer matching the bit depth of the 3D framebuffer. When using the Forward+ renderer this will be an ``RGBA16`` framebuffer, while when using the Mobile renderer it will be an ``RGB10_A2`` framebuffer. Additionally, 2D rendering will take place in linear color space and will be converted to sRGB space immediately before blitting to the screen (if the Viewport is attached to the screen). Practically speaking, this means that the end result of the Viewport will not be clamped into the ``0-1`` range and can be used in 3D rendering without color space adjustments. This allows 2D rendering to take advantage of effects requiring high dynamic range (e.g. 2D glow) as well as substantially improves the appearance of effects requiring highly detailed gradients. \ **Note:** This setting will have no effect when using the Compatibility renderer, which always renders in low dynamic range for performance reasons. diff --git a/classes/class_visualshader.rst b/classes/class_visualshader.rst index 36ccb6281..87202da40 100644 --- a/classes/class_visualshader.rst +++ b/classes/class_visualshader.rst @@ -30,6 +30,18 @@ Tutorials .. rst-class:: classref-reftable-group +Properties +---------- + +.. table:: + :widths: auto + + +-------------------------------+---------------------------------------------------------------+ + | :ref:`Vector2` | :ref:`graph_offset` | + +-------------------------------+---------------------------------------------------------------+ + +.. rst-class:: classref-reftable-group + Methods ------- @@ -328,6 +340,30 @@ Indicates an output node of **VisualShader**. .. rst-class:: classref-descriptions-group +Property Descriptions +--------------------- + +.. _class_VisualShader_property_graph_offset: + +.. rst-class:: classref-property + +:ref:`Vector2` **graph_offset** :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_graph_offset**\ (\ value\: :ref:`Vector2`\ ) +- :ref:`Vector2` **get_graph_offset**\ (\ ) + +**Deprecated:** This property does nothing and always equals to zero. + +Deprecated. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Method Descriptions ------------------- diff --git a/classes/class_webxrinterface.rst b/classes/class_webxrinterface.rst index 2aa048529..412040179 100644 --- a/classes/class_webxrinterface.rst +++ b/classes/class_webxrinterface.rst @@ -485,7 +485,7 @@ Possible values come from `WebXR's XRReferenceSpaceType ` when setting up the WebXR session. -The reference space types are requested in order, and the first one supported by the users device or browser will be used. The :ref:`reference_space_type` property contains the reference space type that was ultimately selected. +The reference space types are requested in order, and the first one supported by the user's device or browser will be used. The :ref:`reference_space_type` property contains the reference space type that was ultimately selected. This doesn't have any effect on the interface when already initialized. diff --git a/classes/class_xrfacemodifier3d.rst b/classes/class_xrfacemodifier3d.rst index 5790aac53..43194551c 100644 --- a/classes/class_xrfacemodifier3d.rst +++ b/classes/class_xrfacemodifier3d.rst @@ -21,7 +21,7 @@ A node for driving standard face meshes from :ref:`XRFaceTracker` to a mesh with supporting face blend shapes. +This node applies weights from an :ref:`XRFaceTracker` to a mesh with supporting face blend shapes. The `Unified Expressions `__ blend shapes are supported, as well as ARKit and SRanipal blend shapes. diff --git a/classes/class_xrinterfaceextension.rst b/classes/class_xrinterfaceextension.rst index b3e84facb..6a6483a13 100644 --- a/classes/class_xrinterfaceextension.rst +++ b/classes/class_xrinterfaceextension.rst @@ -307,7 +307,7 @@ Returns a :ref:`Dictionary` with system information related to :ref:`TrackingStatus` **_get_tracking_status**\ (\ ) |virtual| |const| :ref:`🔗` -Returns a :ref:`TrackingStatus` specifying the current status of our tracking. +Returns an :ref:`TrackingStatus` specifying the current status of our tracking. .. rst-class:: classref-item-separator diff --git a/classes/class_xrnode3d.rst b/classes/class_xrnode3d.rst index 548cf00d1..980416ba4 100644 --- a/classes/class_xrnode3d.rst +++ b/classes/class_xrnode3d.rst @@ -21,7 +21,7 @@ A 3D node that has its position automatically updated by the :ref:`XRServer` and will automatically have its :ref:`Node3D.transform` updated by the :ref:`XRServer`. Nodes of this type must be added as children of the :ref:`XROrigin3D` node. +This node can be bound to a specific pose of an :ref:`XRPositionalTracker` and will automatically have its :ref:`Node3D.transform` updated by the :ref:`XRServer`. Nodes of this type must be added as children of the :ref:`XROrigin3D` node. .. rst-class:: classref-introduction-group diff --git a/classes/class_xrpositionaltracker.rst b/classes/class_xrpositionaltracker.rst index 15852d1e5..af2400d49 100644 --- a/classes/class_xrpositionaltracker.rst +++ b/classes/class_xrpositionaltracker.rst @@ -312,7 +312,7 @@ Marks this pose as invalid, we don't clear the last reported state but it allows **Deprecated:** Use through :ref:`XRControllerTracker`. -Changes the value for the given input. This method is called by a :ref:`XRInterface` implementation and should not be used directly. +Changes the value for the given input. This method is called by an :ref:`XRInterface` implementation and should not be used directly. .. rst-class:: classref-item-separator @@ -324,7 +324,7 @@ Changes the value for the given input. This method is called by a :ref:`XRInterf |void| **set_pose**\ (\ name\: :ref:`StringName`, transform\: :ref:`Transform3D`, linear_velocity\: :ref:`Vector3`, angular_velocity\: :ref:`Vector3`, tracking_confidence\: :ref:`TrackingConfidence`\ ) :ref:`🔗` -Sets the transform, linear velocity, angular velocity and tracking confidence for the given pose. This method is called by a :ref:`XRInterface` implementation and should not be used directly. +Sets the transform, linear velocity, angular velocity and tracking confidence for the given pose. This method is called by an :ref:`XRInterface` implementation and should not be used directly. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` diff --git a/classes/class_xrserver.rst b/classes/class_xrserver.rst index 34d897d95..873091fd2 100644 --- a/classes/class_xrserver.rst +++ b/classes/class_xrserver.rst @@ -182,7 +182,7 @@ enum **TrackerType**: :ref:`🔗` :ref:`TrackerType` **TRACKER_HEAD** = ``1`` -The tracker tracks the location of the players head. This is usually a location centered between the players eyes. Note that for handheld AR devices this can be the current location of the device. +The tracker tracks the location of the player's head. This is usually a location centered between the player's eyes. Note that for handheld AR devices this can be the current location of the device. .. _class_XRServer_constant_TRACKER_CONTROLLER: diff --git a/classes/class_xrtracker.rst b/classes/class_xrtracker.rst index d277cd404..100bd52ba 100644 --- a/classes/class_xrtracker.rst +++ b/classes/class_xrtracker.rst @@ -85,19 +85,19 @@ The description of this tracker. The unique name of this tracker. The trackers that are available differ between various XR runtimes and can often be configured by the user. Godot maintains a number of reserved names that it expects the :ref:`XRInterface` to implement if applicable: -- ``head`` identifies the :ref:`XRPositionalTracker` of the players head +- ``"head"`` identifies the :ref:`XRPositionalTracker` of the player's head -- ``left_hand`` identifies the :ref:`XRControllerTracker` in the players left hand +- ``"left_hand"`` identifies the :ref:`XRControllerTracker` in the player's left hand -- ``right_hand`` identifies the :ref:`XRControllerTracker` in the players right hand +- ``"right_hand"`` identifies the :ref:`XRControllerTracker` in the player's right hand -- ``/user/hand_tracker/left`` identifies the :ref:`XRHandTracker` for the players left hand +- ``"/user/hand_tracker/left"`` identifies the :ref:`XRHandTracker` for the player's left hand -- ``/user/hand_tracker/right`` identifies the :ref:`XRHandTracker` for the players right hand +- ``"/user/hand_tracker/right"`` identifies the :ref:`XRHandTracker` for the player's right hand -- ``/user/body_tracker`` identifies the :ref:`XRBodyTracker` for the players body +- ``"/user/body_tracker"`` identifies the :ref:`XRBodyTracker` for the player's body -- ``/user/face_tracker`` identifies the :ref:`XRFaceTracker` for the players face +- ``"/user/face_tracker"`` identifies the :ref:`XRFaceTracker` for the player's face .. rst-class:: classref-item-separator