diff --git a/classes/class_@globalscope.rst b/classes/class_@globalscope.rst index a35d33e92..f715c3b30 100644 --- a/classes/class_@globalscope.rst +++ b/classes/class_@globalscope.rst @@ -3887,7 +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. +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 variables that are meaningful when the feature is enabled. + +\ **Note:** The ``"feature"`` hint string does not modify or reset any values. .. _class_@GlobalScope_constant_PROPERTY_HINT_INPUT_NAME: diff --git a/classes/class_acceptdialog.rst b/classes/class_acceptdialog.rst index eba6558d4..7f27ae044 100644 --- a/classes/class_acceptdialog.rst +++ b/classes/class_acceptdialog.rst @@ -177,7 +177,7 @@ Sets autowrapping for the text in the dialog. - |void| **set_close_on_escape**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_close_on_escape**\ (\ ) -If ``true``, the dialog will be hidden when the escape key (:ref:`@GlobalScope.KEY_ESCAPE`) is pressed. +If ``true``, the dialog will be hidden when the ``ui_cancel`` action is pressed (by default, this action is bound to :ref:`@GlobalScope.KEY_ESCAPE`). .. rst-class:: classref-item-separator diff --git a/classes/class_array.rst b/classes/class_array.rst index ddf93157c..baa17248f 100644 --- a/classes/class_array.rst +++ b/classes/class_array.rst @@ -123,6 +123,8 @@ Methods +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`duplicate`\ (\ deep\: :ref:`bool` = false\ ) |const| | +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Array` | :ref:`duplicate_deep`\ (\ deep_subresources_mode\: :ref:`int` = 1\ ) |const| | + +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`erase`\ (\ value\: :ref:`Variant`\ ) | +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`fill`\ (\ value\: :ref:`Variant`\ ) | @@ -661,9 +663,23 @@ To count how many elements in an array satisfy a condition, see :ref:`reduce()` elements are shared with the original array. Modifying them in one array will also affect them in the other. +By default, a **shallow** copy is returned: all nested **Array**, :ref:`Dictionary`, and :ref:`Resource` elements are shared with the original array. Modifying any of those in one array will also affect them in the other. -If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays and dictionaries are also duplicated (recursively). +If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays and dictionaries are also duplicated (recursively). Any :ref:`Resource` is still shared with the original array, though. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Array_method_duplicate_deep: + +.. rst-class:: classref-method + +:ref:`Array` **duplicate_deep**\ (\ deep_subresources_mode\: :ref:`int` = 1\ ) |const| :ref:`🔗` + +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). .. rst-class:: classref-item-separator diff --git a/classes/class_colorpicker.rst b/classes/class_colorpicker.rst index d88db9cb4..fd0a0809a 100644 --- a/classes/class_colorpicker.rst +++ b/classes/class_colorpicker.rst @@ -51,6 +51,8 @@ Properties +----------------------------------------------------------+----------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`edit_alpha` | ``true`` | +----------------------------------------------------------+----------------------------------------------------------------------------+-----------------------+ + | :ref:`bool` | :ref:`edit_intensity` | ``true`` | + +----------------------------------------------------------+----------------------------------------------------------------------------+-----------------------+ | :ref:`bool` | :ref:`hex_visible` | ``true`` | +----------------------------------------------------------+----------------------------------------------------------------------------+-----------------------+ | :ref:`PickerShapeType` | :ref:`picker_shape` | ``0`` | @@ -113,6 +115,8 @@ Theme Properties +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ | :ref:`Texture2D` | :ref:`color_hue` | | +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ + | :ref:`Texture2D` | :ref:`color_script` | | + +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ | :ref:`Texture2D` | :ref:`expanded_arrow` | | +-----------------------------------+---------------------------------------------------------------------------------------------------------+---------------------------+ | :ref:`Texture2D` | :ref:`folded_arrow` | | @@ -206,7 +210,7 @@ enum **ColorModeType**: :ref:`🔗` :ref:`ColorModeType` **MODE_RGB** = ``0`` -Allows editing the color with Red/Green/Blue sliders. +Allows editing the color with Red/Green/Blue sliders in sRGB color space. .. _class_ColorPicker_constant_MODE_HSV: @@ -222,7 +226,17 @@ Allows editing the color with Hue/Saturation/Value sliders. :ref:`ColorModeType` **MODE_RAW** = ``2`` -Allows the color R, G, B component values to go beyond 1.0, which can be used for certain special operations that require it (like tinting without darkening or rendering sprites in HDR). +**Deprecated:** This is replaced by :ref:`MODE_LINEAR`. + + + +.. _class_ColorPicker_constant_MODE_LINEAR: + +.. rst-class:: classref-enumeration-constant + +:ref:`ColorModeType` **MODE_LINEAR** = ``2`` + +Allows editing the color with Red/Green/Blue sliders in linear color space. .. _class_ColorPicker_constant_MODE_OKHSL: @@ -397,6 +411,23 @@ If ``true``, shows an alpha channel slider (opacity). ---- +.. _class_ColorPicker_property_edit_intensity: + +.. rst-class:: classref-property + +:ref:`bool` **edit_intensity** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_edit_intensity**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_editing_intensity**\ (\ ) + +If ``true``, shows an intensity slider. The intensity is applied as follows: multiply the color by ``2 ** intensity`` in linear RGB space, and then convert it back to sRGB. + +.. rst-class:: classref-item-separator + +---- + .. _class_ColorPicker_property_hex_visible: .. rst-class:: classref-property @@ -688,6 +719,18 @@ Custom texture for the hue selection slider on the right. ---- +.. _class_ColorPicker_theme_icon_color_script: + +.. rst-class:: classref-themeproperty + +:ref:`Texture2D` **color_script** :ref:`🔗` + +The icon for the button that switches color text to hexadecimal. + +.. rst-class:: classref-item-separator + +---- + .. _class_ColorPicker_theme_icon_expanded_arrow: .. rst-class:: classref-themeproperty diff --git a/classes/class_colorpickerbutton.rst b/classes/class_colorpickerbutton.rst index 4491271d8..9f41d6fe8 100644 --- a/classes/class_colorpickerbutton.rst +++ b/classes/class_colorpickerbutton.rst @@ -42,13 +42,15 @@ Properties .. table:: :widths: auto - +---------------------------+----------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`Color` | :ref:`color` | ``Color(0, 0, 0, 1)`` | - +---------------------------+----------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | :ref:`edit_alpha` | ``true`` | - +---------------------------+----------------------------------------------------------------+-------------------------------------------------------------------------------+ - | :ref:`bool` | toggle_mode | ``true`` (overrides :ref:`BaseButton`) | - +---------------------------+----------------------------------------------------------------+-------------------------------------------------------------------------------+ + +---------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`Color` | :ref:`color` | ``Color(0, 0, 0, 1)`` | + +---------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`edit_alpha` | ``true`` | + +---------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`edit_intensity` | ``true`` | + +---------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+ + | :ref:`bool` | toggle_mode | ``true`` (overrides :ref:`BaseButton`) | + +---------------------------+------------------------------------------------------------------------+-------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group @@ -156,6 +158,23 @@ The currently selected color. If ``true``, the alpha channel in the displayed :ref:`ColorPicker` will be visible. +.. rst-class:: classref-item-separator + +---- + +.. _class_ColorPickerButton_property_edit_intensity: + +.. rst-class:: classref-property + +:ref:`bool` **edit_intensity** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_edit_intensity**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_editing_intensity**\ (\ ) + +If ``true``, the intensity slider in the displayed :ref:`ColorPicker` will be visible. + .. rst-class:: classref-section-separator ---- diff --git a/classes/class_dictionary.rst b/classes/class_dictionary.rst index 4ba418268..19e39ae56 100644 --- a/classes/class_dictionary.rst +++ b/classes/class_dictionary.rst @@ -235,6 +235,8 @@ Methods +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`duplicate`\ (\ deep\: :ref:`bool` = false\ ) |const| | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`duplicate_deep`\ (\ deep_subresources_mode\: :ref:`int` = 1\ ) |const| | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`erase`\ (\ key\: :ref:`Variant`\ ) | +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`find_key`\ (\ value\: :ref:`Variant`\ ) |const| | @@ -388,7 +390,25 @@ Clears the dictionary, removing all entries from it. :ref:`Dictionary` **duplicate**\ (\ deep\: :ref:`bool` = false\ ) |const| :ref:`🔗` -Creates and returns a new copy of the dictionary. If ``deep`` is ``true``, inner **Dictionary** and :ref:`Array` keys and values are also copied, recursively. +Returns a new copy of the dictionary. + +By default, a **shallow** copy is returned: all nested :ref:`Array`, **Dictionary**, and :ref:`Resource` keys and values are shared with the original dictionary. Modifying any of those in one dictionary will also affect them in the other. + +If ``deep`` is ``true``, a **deep** copy is returned: all nested arrays and dictionaries are also duplicated (recursively). Any :ref:`Resource` is still shared with the original dictionary, though. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Dictionary_method_duplicate_deep: + +.. rst-class:: classref-method + +:ref:`Dictionary` **duplicate_deep**\ (\ deep_subresources_mode\: :ref:`int` = 1\ ) |const| :ref:`🔗` + +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). .. rst-class:: classref-item-separator diff --git a/classes/class_diraccess.rst b/classes/class_diraccess.rst index ae2dcb8ad..660eb092d 100644 --- a/classes/class_diraccess.rst +++ b/classes/class_diraccess.rst @@ -155,6 +155,8 @@ Methods +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`PackedStringArray` | :ref:`get_files_at`\ (\ path\: :ref:`String`\ ) |static| | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_filesystem_type`\ (\ ) |const| | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_next`\ (\ ) | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`get_open_error`\ (\ ) |static| | @@ -504,6 +506,20 @@ Use :ref:`get_files()` if you want more contro ---- +.. _class_DirAccess_method_get_filesystem_type: + +.. rst-class:: classref-method + +:ref:`String` **get_filesystem_type**\ (\ ) |const| :ref:`🔗` + +Returns file system type name of the current directory's disk. Returned values are uppercase strings like ``NTFS``, ``FAT32``, ``EXFAT``, ``APFS``, ``EXT4``, ``BTRFS``, and so on. + +\ **Note:** This method is implemented on macOS, Linux, Windows and for PCK virtual file system. + +.. rst-class:: classref-item-separator + +---- + .. _class_DirAccess_method_get_next: .. rst-class:: classref-method diff --git a/classes/class_editorcontextmenuplugin.rst b/classes/class_editorcontextmenuplugin.rst index e34453973..d4707b907 100644 --- a/classes/class_editorcontextmenuplugin.rst +++ b/classes/class_editorcontextmenuplugin.rst @@ -88,7 +88,7 @@ Context menu of Script editor's script tabs. :ref:`_popup_menu()` **CONTEXT_SLOT_FILESYSTEM_CREATE** = ``3`` -The "Create..." submenu of FileSystem dock's context menu. :ref:`_popup_menu()` and option callback will be called with list of paths of the currently selected files. +The "Create..." submenu of FileSystem dock's context menu, or the "New" section of the main context menu when empty space is clicked. :ref:`_popup_menu()` and option callback will be called with list of paths of the currently selected files. When clicking the empty space, the list of paths for popup method will be empty. .. _class_EditorContextMenuPlugin_constant_CONTEXT_SLOT_SCRIPT_EDITOR_CODE: diff --git a/classes/class_editorexportplatformandroid.rst b/classes/class_editorexportplatformandroid.rst index befa96fd4..a19f4c72d 100644 --- a/classes/class_editorexportplatformandroid.rst +++ b/classes/class_editorexportplatformandroid.rst @@ -58,6 +58,8 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`gradle_build/android_source_template` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Dictionary` | :ref:`gradle_build/custom_theme_attributes` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`gradle_build/export_format` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`gradle_build/gradle_build_directory` | @@ -424,6 +426,8 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`screen/support_xlarge` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`user_data_backup/allow` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`version/code` | @@ -596,6 +600,24 @@ Path to a ZIP file holding the source for the export template used in a Gradle b ---- +.. _class_EditorExportPlatformAndroid_property_gradle_build/custom_theme_attributes: + +.. rst-class:: classref-property + +:ref:`Dictionary` **gradle_build/custom_theme_attributes** :ref:`🔗` + +A dictionary of custom theme attributes to include in the exported Android project. Each entry defines a theme attribute name and its value, and will be added to the **GodotAppMainTheme**. + +For example, the key ``android:windowSwipeToDismiss`` with the value ``false`` is resolved to ``false``. + +\ **Note:** To add a custom attribute to the **GodotAppSplashTheme**, prefix the attribute name with ``[splash]``. + +\ **Note:** Reserved attributes configured via other export options or project settings cannot be overridden by ``custom_theme_attributes`` and are skipped during export. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformAndroid_property_gradle_build/export_format: .. rst-class:: classref-property @@ -2826,6 +2848,18 @@ Indicates whether the application supports extra large screen form-factors. ---- +.. _class_EditorExportPlatformAndroid_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ or Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformAndroid_property_user_data_backup/allow: .. rst-class:: classref-property diff --git a/classes/class_editorexportplatformios.rst b/classes/class_editorexportplatformios.rst index 695963585..b332db5d9 100644 --- a/classes/class_editorexportplatformios.rst +++ b/classes/class_editorexportplatformios.rst @@ -500,6 +500,8 @@ Properties +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`privacy/user_defaults_access_reasons` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`storyboard/custom_bg_color` | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`storyboard/custom_image@2x` | @@ -3358,6 +3360,18 @@ The reasons your app use user defaults API. See `Describing use of required reas ---- +.. _class_EditorExportPlatformIOS_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ or Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformIOS_property_storyboard/custom_bg_color: .. rst-class:: classref-property diff --git a/classes/class_editorexportplatformlinuxbsd.rst b/classes/class_editorexportplatformlinuxbsd.rst index f95fd35c1..bb2798a75 100644 --- a/classes/class_editorexportplatformlinuxbsd.rst +++ b/classes/class_editorexportplatformlinuxbsd.rst @@ -40,6 +40,8 @@ Properties +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/export_console_wrapper` | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`ssh_remote_deploy/cleanup_script` | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`ssh_remote_deploy/enabled` | @@ -76,7 +78,7 @@ Property Descriptions Application executable architecture. -Supported architectures: ``x86_32``, ``x86_64``, ``arm64``, ``arm32``, ``rv64``, ``ppc64``, ``ppc32``, and ``loongarch64``. +Supported architectures: ``x86_32``, ``x86_64``, ``arm64``, ``arm32``, ``rv64``, ``ppc64``, and ``loongarch64``. Official export templates include ``x86_32``, ``x86_64``, ``arm32``, and ``arm64`` binaries only. @@ -132,6 +134,18 @@ If ``true``, a console wrapper is exported alongside the main executable, which ---- +.. _class_EditorExportPlatformLinuxBSD_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ or Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformLinuxBSD_property_ssh_remote_deploy/cleanup_script: .. rst-class:: classref-property diff --git a/classes/class_editorexportplatformmacos.rst b/classes/class_editorexportplatformmacos.rst index f49df0b33..32cc62f73 100644 --- a/classes/class_editorexportplatformmacos.rst +++ b/classes/class_editorexportplatformmacos.rst @@ -476,6 +476,8 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`privacy/tracking_enabled` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`ssh_remote_deploy/cleanup_script` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`ssh_remote_deploy/enabled` | @@ -3212,6 +3214,18 @@ Indicates whether your app uses data for tracking. See `Privacy manifest files < ---- +.. _class_EditorExportPlatformMacOS_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ or Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformMacOS_property_ssh_remote_deploy/cleanup_script: .. rst-class:: classref-property diff --git a/classes/class_editorexportplatformvisionos.rst b/classes/class_editorexportplatformvisionos.rst index 377c44e17..11b20ea30 100644 --- a/classes/class_editorexportplatformvisionos.rst +++ b/classes/class_editorexportplatformvisionos.rst @@ -402,6 +402,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`privacy/user_defaults_access_reasons` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`user_data/accessible_from_files_app` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`user_data/accessible_from_itunes_sharing` | @@ -2664,6 +2666,18 @@ The reasons your app use user defaults API. See `Describing use of required reas ---- +.. _class_EditorExportPlatformVisionOS_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ and Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformVisionOS_property_user_data/accessible_from_files_app: .. rst-class:: classref-property diff --git a/classes/class_editorexportplatformwindows.rst b/classes/class_editorexportplatformwindows.rst index a6265d712..09e069aa3 100644 --- a/classes/class_editorexportplatformwindows.rst +++ b/classes/class_editorexportplatformwindows.rst @@ -93,6 +93,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`debug/export_console_wrapper` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`shader_baker/enabled` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`ssh_remote_deploy/cleanup_script` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`ssh_remote_deploy/enabled` | @@ -467,6 +469,18 @@ If ``true``, a console wrapper executable is exported alongside the main executa ---- +.. _class_EditorExportPlatformWindows_property_shader_baker/enabled: + +.. rst-class:: classref-property + +:ref:`bool` **shader_baker/enabled** :ref:`🔗` + +If ``true``, shaders will be compiled and embedded in the application. This option is only supported when using the Forward+ and Mobile renderers. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorExportPlatformWindows_property_ssh_remote_deploy/cleanup_script: .. rst-class:: classref-property diff --git a/classes/class_editorproperty.rst b/classes/class_editorproperty.rst index aa1e54e7c..f66ae2100 100644 --- a/classes/class_editorproperty.rst +++ b/classes/class_editorproperty.rst @@ -528,7 +528,9 @@ If one or several properties have changed, this must be called. ``field`` is use :ref:`Object` **get_edited_object**\ (\ ) :ref:`🔗` -Gets the edited object. +Returns the edited object. + +\ **Note:** This method could return ``null`` if the editor has not yet been associated with a property. However, in :ref:`_update_property()` and :ref:`_set_read_only()`, this value is *guaranteed* to be non-``null``. .. rst-class:: classref-item-separator @@ -540,7 +542,9 @@ Gets the edited object. :ref:`StringName` **get_edited_property**\ (\ ) |const| :ref:`🔗` -Gets the edited property. If your editor is for a single property (added via :ref:`EditorInspectorPlugin._parse_property()`), then this will return the property. +Returns the edited property. If your editor is for a single property (added via :ref:`EditorInspectorPlugin._parse_property()`), then this will return the property. + +\ **Note:** This method could return ``null`` if the editor has not yet been associated with a property. However, in :ref:`_update_property()` and :ref:`_set_read_only()`, this value is *guaranteed* to be non-``null``. .. rst-class:: classref-item-separator @@ -612,7 +616,7 @@ Assigns object and property to edit. |void| **update_property**\ (\ ) :ref:`🔗` -Forces refresh of the property display. +Forces a refresh of the property display. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_editorsettings.rst b/classes/class_editorsettings.rst index 6e16b2b9f..9c5b4e200 100644 --- a/classes/class_editorsettings.rst +++ b/classes/class_editorsettings.rst @@ -523,6 +523,8 @@ Properties +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`interface/inspector/auto_unfold_foreign_scenes` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`bool` | :ref:`interface/inspector/color_picker_show_intensity` | + +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/inspector/default_color_picker_mode` | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`interface/inspector/default_color_picker_shape` | @@ -3956,6 +3958,18 @@ If ``true``, automatically expands property groups in the Inspector dock when op ---- +.. _class_EditorSettings_property_interface/inspector/color_picker_show_intensity: + +.. rst-class:: classref-property + +:ref:`bool` **interface/inspector/color_picker_show_intensity** :ref:`🔗` + +If ``true``, show the intensity slider in the :ref:`ColorPicker`\ s opened in the editor. + +.. rst-class:: classref-item-separator + +---- + .. _class_EditorSettings_property_interface/inspector/default_color_picker_mode: .. rst-class:: classref-property diff --git a/classes/class_engine.rst b/classes/class_engine.rst index e7064075c..7b7027765 100644 --- a/classes/class_engine.rst +++ b/classes/class_engine.rst @@ -300,7 +300,7 @@ If ``include_variables`` is ``true``, the backtrace will also include the names :ref:`String` **get_architecture_name**\ (\ ) |const| :ref:`🔗` -Returns the name of the CPU architecture the Godot binary was built for. Possible return values include ``"x86_64"``, ``"x86_32"``, ``"arm64"``, ``"arm32"``, ``"rv64"``, ``"riscv"``, ``"ppc64"``, ``"ppc"``, ``"wasm64"``, and ``"wasm32"``. +Returns the name of the CPU architecture the Godot binary was built for. Possible return values include ``"x86_64"``, ``"x86_32"``, ``"arm64"``, ``"arm32"``, ``"rv64"``, ``"ppc64"``, ``"loongarch64"``, ``"wasm64"``, and ``"wasm32"``. To detect whether the current build is 64-bit, or the type of architecture, don't use the architecture name. Instead, use :ref:`OS.has_feature()` to check for the ``"64"`` feature tag, or tags such as ``"x86"`` or ``"arm"``. See the :doc:`Feature Tags <../tutorials/export/feature_tags>` documentation for more details. diff --git a/classes/class_node.rst b/classes/class_node.rst index 34a5a6574..848fd9776 100644 --- a/classes/class_node.rst +++ b/classes/class_node.rst @@ -189,6 +189,8 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`get_node_or_null`\ (\ path\: :ref:`NodePath`\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_node_rpc_config`\ (\ ) |const| | + +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`int`\] | :ref:`get_orphan_node_ids`\ (\ ) |static| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`get_parent`\ (\ ) |const| | @@ -201,8 +203,6 @@ Methods +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_process_delta_time`\ (\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :ref:`Variant` | :ref:`get_rpc_config`\ (\ ) |const| | - +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`get_scene_instance_load_placeholder`\ (\ ) |const| | +------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`SceneTree` | :ref:`get_tree`\ (\ ) |const| | @@ -2342,6 +2342,20 @@ Fetches a node by :ref:`NodePath`. Similar to :ref:`get_node()` **get_node_rpc_config**\ (\ ) |const| :ref:`🔗` + +Returns a :ref:`Dictionary` mapping method names to their RPC configuration defined for this node using :ref:`rpc_config()`. + +\ **Note:** This method only returns the RPC configuration assigned via :ref:`rpc_config()`. See :ref:`Script.get_rpc_config()` to retrieve the RPCs defined by the :ref:`Script`. + +.. rst-class:: classref-item-separator + +---- + .. _class_Node_method_get_orphan_node_ids: .. rst-class:: classref-method @@ -2424,18 +2438,6 @@ Returns the time elapsed (in seconds) since the last process callback. This valu ---- -.. _class_Node_method_get_rpc_config: - -.. rst-class:: classref-method - -:ref:`Variant` **get_rpc_config**\ (\ ) |const| :ref:`🔗` - -Returns a :ref:`Dictionary` mapping method names to their RPC configuration defined for this node using :ref:`rpc_config()`. - -.. rst-class:: classref-item-separator - ----- - .. _class_Node_method_get_scene_instance_load_placeholder: .. rst-class:: classref-method diff --git a/classes/class_object.rst b/classes/class_object.rst index b6103dae8..e9ca02c27 100644 --- a/classes/class_object.rst +++ b/classes/class_object.rst @@ -274,6 +274,14 @@ One-shot connections disconnect themselves after emission. Reference-counted connections can be assigned to the same :ref:`Callable` multiple times. Each disconnection decreases the internal counter. The signal fully disconnects only when the counter reaches 0. +.. _class_Object_constant_CONNECT_APPEND_SOURCE_OBJECT: + +.. rst-class:: classref-enumeration-constant + +:ref:`ConnectFlags` **CONNECT_APPEND_SOURCE_OBJECT** = ``16`` + +The source object is automatically bound when a :ref:`PackedScene` is instantiated. If this flag bit is enabled, the source object will be appended right after the original arguments of the signal. + .. rst-class:: classref-section-separator ---- diff --git a/classes/class_openxrfutureresult.rst b/classes/class_openxrfutureresult.rst index 100699f8f..a3e301781 100644 --- a/classes/class_openxrfutureresult.rst +++ b/classes/class_openxrfutureresult.rst @@ -29,13 +29,17 @@ Methods .. table:: :widths: auto - +-----------------------------------------------------------+-----------------------------------------------------------------------------+ - | |void| | :ref:`cancel_future`\ (\ ) | - +-----------------------------------------------------------+-----------------------------------------------------------------------------+ - | :ref:`int` | :ref:`get_future`\ (\ ) |const| | - +-----------------------------------------------------------+-----------------------------------------------------------------------------+ - | :ref:`ResultStatus` | :ref:`get_status`\ (\ ) |const| | - +-----------------------------------------------------------+-----------------------------------------------------------------------------+ + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`cancel_future`\ (\ ) | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`int` | :ref:`get_future`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`Variant` | :ref:`get_result_value`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`ResultStatus` | :ref:`get_status`\ (\ ) |const| | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_result_value`\ (\ result_value\: :ref:`Variant`\ ) | + +-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -126,6 +130,18 @@ Return the ``XrFutureEXT`` value this result relates to. ---- +.. _class_OpenXRFutureResult_method_get_result_value: + +.. rst-class:: classref-method + +:ref:`Variant` **get_result_value**\ (\ ) |const| :ref:`🔗` + +Returns the result value of our asynchronous function (if set by the extension). The type of this result value depends on the function being called. Consult the documentation of the relevant function. + +.. rst-class:: classref-item-separator + +---- + .. _class_OpenXRFutureResult_method_get_status: .. rst-class:: classref-method @@ -134,6 +150,20 @@ Return the ``XrFutureEXT`` value this result relates to. Returns the status of this result. +.. rst-class:: classref-item-separator + +---- + +.. _class_OpenXRFutureResult_method_set_result_value: + +.. rst-class:: classref-method + +|void| **set_result_value**\ (\ result_value\: :ref:`Variant`\ ) :ref:`🔗` + +Stores the result value we expose to the user. + +\ **Note:** This method should only be called by an OpenXR extension that implements an asynchronous function. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_physicsserver3d.rst b/classes/class_physicsserver3d.rst index 6448f31f5..3642d01a7 100644 --- a/classes/class_physicsserver3d.rst +++ b/classes/class_physicsserver3d.rst @@ -304,6 +304,14 @@ Methods +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`soft_body_add_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`soft_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`soft_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`soft_body_apply_point_force`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`soft_body_apply_point_impulse`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`soft_body_create`\ (\ ) | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`soft_body_get_bounds`\ (\ body\: :ref:`RID`\ ) |const| | @@ -322,6 +330,8 @@ Methods +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`soft_body_get_pressure_coefficient`\ (\ body\: :ref:`RID`\ ) |const| | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`soft_body_get_shrinking_factor`\ (\ body\: :ref:`RID`\ ) |const| | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`soft_body_get_simulation_precision`\ (\ body\: :ref:`RID`\ ) |const| | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`soft_body_get_space`\ (\ body\: :ref:`RID`\ ) |const| | @@ -356,6 +366,8 @@ Methods +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`soft_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`soft_body_set_shrinking_factor`\ (\ body\: :ref:`RID`, shrinking_factor\: :ref:`float`\ ) | + +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`soft_body_set_simulation_precision`\ (\ body\: :ref:`RID`, simulation_precision\: :ref:`int`\ ) | +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`soft_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) | @@ -3515,6 +3527,58 @@ Adds the given body to the list of bodies exempt from collisions. ---- +.. _class_PhysicsServer3D_method_soft_body_apply_central_force: + +.. rst-class:: classref-method + +|void| **soft_body_apply_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) :ref:`🔗` + +Distributes and applies a force to all points. A force is time dependent and meant to be applied every physics update. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3D_method_soft_body_apply_central_impulse: + +.. rst-class:: classref-method + +|void| **soft_body_apply_central_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) :ref:`🔗` + +Distributes and applies an impulse to all points. + +An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise). + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3D_method_soft_body_apply_point_force: + +.. rst-class:: classref-method + +|void| **soft_body_apply_point_force**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) :ref:`🔗` + +Applies a force to a point. A force is time dependent and meant to be applied every physics update. + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3D_method_soft_body_apply_point_impulse: + +.. rst-class:: classref-method + +|void| **soft_body_apply_point_impulse**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) :ref:`🔗` + +Applies an impulse to a point. + +An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise). + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3D_method_soft_body_create: .. rst-class:: classref-method @@ -3623,6 +3687,18 @@ Returns the pressure coefficient of the given soft body. ---- +.. _class_PhysicsServer3D_method_soft_body_get_shrinking_factor: + +.. rst-class:: classref-method + +:ref:`float` **soft_body_get_shrinking_factor**\ (\ body\: :ref:`RID`\ ) |const| :ref:`🔗` + +Returns the shrinking factor of the given soft body. + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3D_method_soft_body_get_simulation_precision: .. rst-class:: classref-method @@ -3833,6 +3909,18 @@ Sets whether the given soft body will be pickable when using object picking. ---- +.. _class_PhysicsServer3D_method_soft_body_set_shrinking_factor: + +.. rst-class:: classref-method + +|void| **soft_body_set_shrinking_factor**\ (\ body\: :ref:`RID`, shrinking_factor\: :ref:`float`\ ) :ref:`🔗` + +Sets the shrinking factor of the given soft body. + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3D_method_soft_body_set_simulation_precision: .. rst-class:: classref-method diff --git a/classes/class_physicsserver3dextension.rst b/classes/class_physicsserver3dextension.rst index a0ec519d5..f9f694ac6 100644 --- a/classes/class_physicsserver3dextension.rst +++ b/classes/class_physicsserver3dextension.rst @@ -316,6 +316,14 @@ Methods +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_soft_body_add_collision_exception`\ (\ body\: :ref:`RID`, body_b\: :ref:`RID`\ ) |virtual| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_central_force`\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_central_impulse`\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_point_force`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) |virtual| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_apply_point_impulse`\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) |virtual| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`_soft_body_create`\ (\ ) |virtual| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AABB` | :ref:`_soft_body_get_bounds`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | @@ -336,6 +344,8 @@ Methods +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`_soft_body_get_pressure_coefficient`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`_soft_body_get_shrinking_factor`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`_soft_body_get_simulation_precision`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`RID` | :ref:`_soft_body_get_space`\ (\ body\: :ref:`RID`\ ) |virtual| |const| | @@ -370,6 +380,8 @@ Methods +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_soft_body_set_ray_pickable`\ (\ body\: :ref:`RID`, enable\: :ref:`bool`\ ) |virtual| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`_soft_body_set_shrinking_factor`\ (\ body\: :ref:`RID`, shrinking_factor\: :ref:`float`\ ) |virtual| | + +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_soft_body_set_simulation_precision`\ (\ body\: :ref:`RID`, simulation_precision\: :ref:`int`\ ) |virtual| | +-------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_soft_body_set_space`\ (\ body\: :ref:`RID`, space\: :ref:`RID`\ ) |virtual| | @@ -2410,6 +2422,62 @@ Method Descriptions ---- +.. _class_PhysicsServer3DExtension_private_method__soft_body_apply_central_force: + +.. rst-class:: classref-method + +|void| **_soft_body_apply_central_force**\ (\ body\: :ref:`RID`, force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3DExtension_private_method__soft_body_apply_central_impulse: + +.. rst-class:: classref-method + +|void| **_soft_body_apply_central_impulse**\ (\ body\: :ref:`RID`, impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3DExtension_private_method__soft_body_apply_point_force: + +.. rst-class:: classref-method + +|void| **_soft_body_apply_point_force**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + +.. _class_PhysicsServer3DExtension_private_method__soft_body_apply_point_impulse: + +.. rst-class:: classref-method + +|void| **_soft_body_apply_point_impulse**\ (\ body\: :ref:`RID`, point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) |virtual| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3DExtension_private_method__soft_body_create: .. rst-class:: classref-method @@ -2550,6 +2618,20 @@ Method Descriptions ---- +.. _class_PhysicsServer3DExtension_private_method__soft_body_get_shrinking_factor: + +.. rst-class:: classref-method + +:ref:`float` **_soft_body_get_shrinking_factor**\ (\ body\: :ref:`RID`\ ) |virtual| |const| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3DExtension_private_method__soft_body_get_simulation_precision: .. rst-class:: classref-method @@ -2788,6 +2870,20 @@ Method Descriptions ---- +.. _class_PhysicsServer3DExtension_private_method__soft_body_set_shrinking_factor: + +.. rst-class:: classref-method + +|void| **_soft_body_set_shrinking_factor**\ (\ body\: :ref:`RID`, shrinking_factor\: :ref:`float`\ ) |virtual| :ref:`🔗` + +.. container:: contribute + + There is currently no description for this method. Please help us by :ref:`contributing one `! + +.. rst-class:: classref-item-separator + +---- + .. _class_PhysicsServer3DExtension_private_method__soft_body_set_simulation_precision: .. rst-class:: classref-method diff --git a/classes/class_projectsettings.rst b/classes/class_projectsettings.rst index b9c1ed934..c0d64c51e 100644 --- a/classes/class_projectsettings.rst +++ b/classes/class_projectsettings.rst @@ -1349,6 +1349,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`physics/3d/physics_engine` | ``"DEFAULT"`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`physics/3d/physics_interpolation/scene_traversal` | ``"DEFAULT"`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`physics/3d/run_on_separate_thread` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`physics/3d/sleep_threshold_angular` | ``0.13962634`` | @@ -1463,6 +1465,8 @@ Properties +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/anti_aliasing/quality/screen_space_aa` | ``0`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ + | :ref:`float` | :ref:`rendering/anti_aliasing/quality/smaa_edge_detection_threshold` | ``0.05`` | + +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/anti_aliasing/quality/use_debanding` | ``false`` | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/anti_aliasing/quality/use_taa` | ``false`` | @@ -10298,6 +10302,24 @@ Third-party extensions and modules can add other physics engines to select with ---- +.. _class_ProjectSettings_property_physics/3d/physics_interpolation/scene_traversal: + +.. rst-class:: classref-property + +:ref:`String` **physics/3d/physics_interpolation/scene_traversal** = ``"DEFAULT"`` :ref:`🔗` + +The approach used for 3D scene traversal when physics interpolation is enabled. + +- ``DEFAULT``: The default optimized method. + +- ``Legacy``: The previous reference method used for scene tree traversal, which is slower. + +- ``Debug``: Swaps between ``DEFAULT`` and ``Legacy`` methods on alternating frames, and provides logging information (which in turn makes it slower). Intended for debugging only; you should use the ``DEFAULT`` method in most cases. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_physics/3d/run_on_separate_thread: .. rst-class:: classref-property @@ -11088,6 +11110,20 @@ Another way to combat specular aliasing is to enable :ref:`rendering/anti_aliasi ---- +.. _class_ProjectSettings_property_rendering/anti_aliasing/quality/smaa_edge_detection_threshold: + +.. rst-class:: classref-property + +:ref:`float` **rendering/anti_aliasing/quality/smaa_edge_detection_threshold** = ``0.05`` :ref:`🔗` + +Sets the sensitivity to edges when using SMAA for antialiasing. Lower values will catch more edges, at a potentially higher performance cost. + +\ **Note:** This property is only read when the project starts. There is currently no way to change this setting at run-time. + +.. rst-class:: classref-item-separator + +---- + .. _class_ProjectSettings_property_rendering/anti_aliasing/quality/use_debanding: .. rst-class:: classref-property diff --git a/classes/class_renderingserver.rst b/classes/class_renderingserver.rst index 25105bc47..214da52a6 100644 --- a/classes/class_renderingserver.rst +++ b/classes/class_renderingserver.rst @@ -3384,11 +3384,19 @@ Do not perform any antialiasing in the full screen post-process. Use fast approximate antialiasing. FXAA is a popular screen-space antialiasing method, which is fast but will make the image look blurry, especially at lower resolutions. It can still work relatively well at large resolutions such as 1440p and 4K. +.. _class_RenderingServer_constant_VIEWPORT_SCREEN_SPACE_AA_SMAA: + +.. rst-class:: classref-enumeration-constant + +:ref:`ViewportScreenSpaceAA` **VIEWPORT_SCREEN_SPACE_AA_SMAA** = ``2`` + +Use subpixel morphological antialiasing. SMAA may produce clearer results than FXAA, but at a slightly higher performance cost. + .. _class_RenderingServer_constant_VIEWPORT_SCREEN_SPACE_AA_MAX: .. rst-class:: classref-enumeration-constant -:ref:`ViewportScreenSpaceAA` **VIEWPORT_SCREEN_SPACE_AA_MAX** = ``2`` +:ref:`ViewportScreenSpaceAA` **VIEWPORT_SCREEN_SPACE_AA_MAX** = ``3`` Represents the size of the :ref:`ViewportScreenSpaceAA` enum. diff --git a/classes/class_resource.rst b/classes/class_resource.rst index 15e6a4990..e9a7c83aa 100644 --- a/classes/class_resource.rst +++ b/classes/class_resource.rst @@ -64,39 +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`\ (\ subresources\: :ref:`bool` = false\ ) |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:`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`\ ) | + +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -137,6 +139,45 @@ Emitted by a newly duplicated resource with :ref:`resource_local_to_scene` + +.. _class_Resource_constant_RESOURCE_DEEP_DUPLICATE_NONE: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResourceDeepDuplicateMode` **RESOURCE_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: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResourceDeepDuplicateMode` **RESOURCE_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: + +.. rst-class:: classref-enumeration-constant + +:ref:`ResourceDeepDuplicateMode` **RESOURCE_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. + +.. rst-class:: classref-section-separator + +---- + +.. rst-class:: classref-descriptions-group + Property Descriptions --------------------- @@ -288,22 +329,38 @@ Override this method to customize the newly duplicated resource created from :re .. rst-class:: classref-method -:ref:`Resource` **duplicate**\ (\ subresources\: :ref:`bool` = false\ ) |const| :ref:`🔗` +:ref:`Resource` **duplicate**\ (\ deep\: :ref:`bool` = false\ ) |const| :ref:`🔗` Duplicates this resource, returning a new resource with its ``export``\ ed or :ref:`@GlobalScope.PROPERTY_USAGE_STORAGE` properties copied from the original. -If ``subresources`` is ``false``, a shallow copy is returned; nested resources within subresources are not duplicated and are shared with the original resource (with one exception; see below). If ``subresources`` is ``true``, a deep copy is returned; nested subresources will be duplicated and are not shared (with two exceptions; see below). +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. -\ ``subresources`` is usually respected, with the following exceptions: +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()`. -- Subresource properties with the :ref:`@GlobalScope.PROPERTY_USAGE_ALWAYS_DUPLICATE` flag are always duplicated. +The following exceptions apply: + +- Subresource properties with the :ref:`@GlobalScope.PROPERTY_USAGE_ALWAYS_DUPLICATE` flag are always duplicated (recursively or not, depending on ``deep``). - Subresource properties with the :ref:`@GlobalScope.PROPERTY_USAGE_NEVER_DUPLICATE` flag are never duplicated. -- Subresources inside :ref:`Array` and :ref:`Dictionary` properties are never duplicated. - \ **Note:** For custom resources, this method will fail if :ref:`Object._init()` has been defined with required parameters. +\ **Note:** When duplicating with ``deep`` set to ``true``, each resource found, including the one on which this method is called, will be only duplicated once and referenced as many times as needed in the duplicate. For instance, if you are duplicating resource A that happens to have resource B referenced twice, you'll get a new resource A' referencing a new resource B' twice. + +.. rst-class:: classref-item-separator + +---- + +.. _class_Resource_method_duplicate_deep: + +.. rst-class:: classref-method + +:ref:`Resource` **duplicate_deep**\ (\ deep_subresources_mode\: :ref:`ResourceDeepDuplicateMode` = 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`. + .. rst-class:: classref-item-separator ---- diff --git a/classes/class_resourceuid.rst b/classes/class_resourceuid.rst index 3317049ab..9b69df85d 100644 --- a/classes/class_resourceuid.rst +++ b/classes/class_resourceuid.rst @@ -38,18 +38,24 @@ Methods +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`create_id_for_path`\ (\ path\: :ref:`String`\ ) | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`ensure_path`\ (\ path_or_uid\: :ref:`String`\ ) |static| | + +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_id_path`\ (\ id\: :ref:`int`\ ) |const| | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_id`\ (\ id\: :ref:`int`\ ) |const| | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`id_to_text`\ (\ id\: :ref:`int`\ ) |const| | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`path_to_uid`\ (\ path\: :ref:`String`\ ) |static| | + +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`remove_id`\ (\ id\: :ref:`int`\ ) | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_id`\ (\ id\: :ref:`int`, path\: :ref:`String`\ ) | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`text_to_id`\ (\ text_id\: :ref:`String`\ ) |const| | +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`uid_to_path`\ (\ uid\: :ref:`String`\ ) |static| | + +-----------------------------+----------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator @@ -119,6 +125,18 @@ Like :ref:`create_id()`, but the UID is seed ---- +.. _class_ResourceUID_method_ensure_path: + +.. rst-class:: classref-method + +:ref:`String` **ensure_path**\ (\ path_or_uid\: :ref:`String`\ ) |static| :ref:`🔗` + +Returns a path, converting ``path_or_uid`` if necessary. Prints an error if provided an invalid UID. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceUID_method_get_id_path: .. rst-class:: classref-method @@ -157,6 +175,18 @@ Converts the given UID to a ``uid://`` string value. ---- +.. _class_ResourceUID_method_path_to_uid: + +.. rst-class:: classref-method + +:ref:`String` **path_to_uid**\ (\ path\: :ref:`String`\ ) |static| :ref:`🔗` + +Converts the provided resource ``path`` to a UID. Returns the unchanged path if it has no associated UID. + +.. rst-class:: classref-item-separator + +---- + .. _class_ResourceUID_method_remove_id: .. rst-class:: classref-method @@ -193,6 +223,18 @@ Fails with an error if the UID does not exist, so be sure to check :ref:`has_id( Extracts the UID value from the given ``uid://`` string. +.. rst-class:: classref-item-separator + +---- + +.. _class_ResourceUID_method_uid_to_path: + +.. rst-class:: classref-method + +:ref:`String` **uid_to_path**\ (\ uid\: :ref:`String`\ ) |static| :ref:`🔗` + +Converts the provided ``uid`` to a path. Prints an error if the UID is invalid. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_softbody3d.rst b/classes/class_softbody3d.rst index eda33928a..c2edf6a7e 100644 --- a/classes/class_softbody3d.rst +++ b/classes/class_softbody3d.rst @@ -59,6 +59,8 @@ Properties +-------------------------------------------------+-----------------------------------------------------------------------------------+------------------+ | :ref:`bool` | :ref:`ray_pickable` | ``true`` | +-------------------------------------------------+-----------------------------------------------------------------------------------+------------------+ + | :ref:`float` | :ref:`shrinking_factor` | ``0.0`` | + +-------------------------------------------------+-----------------------------------------------------------------------------------+------------------+ | :ref:`int` | :ref:`simulation_precision` | ``5`` | +-------------------------------------------------+-----------------------------------------------------------------------------------+------------------+ | :ref:`float` | :ref:`total_mass` | ``1.0`` | @@ -75,6 +77,14 @@ Methods +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`add_collision_exception_with`\ (\ body\: :ref:`Node`\ ) | +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`apply_central_force`\ (\ force\: :ref:`Vector3`\ ) | + +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`apply_central_impulse`\ (\ impulse\: :ref:`Vector3`\ ) | + +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`apply_force`\ (\ point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) | + +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`apply_impulse`\ (\ point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) | + +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`PhysicsBody3D`\] | :ref:`get_collision_exceptions`\ (\ ) | +------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`get_collision_layer_value`\ (\ layer_number\: :ref:`int`\ ) |const| | @@ -297,6 +307,25 @@ If ``true``, the **SoftBody3D** will respond to :ref:`RayCast3D ---- +.. _class_SoftBody3D_property_shrinking_factor: + +.. rst-class:: classref-property + +:ref:`float` **shrinking_factor** = ``0.0`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_shrinking_factor**\ (\ value\: :ref:`float`\ ) +- :ref:`float` **get_shrinking_factor**\ (\ ) + +Scales the rest lengths of **SoftBody3D**'s edge constraints. Positive values shrink the mesh, while negative values expand it. For example, a value of ``0.1`` shortens the edges of the mesh by 10%, while ``-0.1`` expands the edges by 10%. + +\ **Note:** :ref:`shrinking_factor` is best used on surface meshes with pinned points. + +.. rst-class:: classref-item-separator + +---- + .. _class_SoftBody3D_property_simulation_precision: .. rst-class:: classref-property @@ -348,6 +377,58 @@ Adds a body to the list of bodies that this body can't collide with. ---- +.. _class_SoftBody3D_method_apply_central_force: + +.. rst-class:: classref-method + +|void| **apply_central_force**\ (\ force\: :ref:`Vector3`\ ) :ref:`🔗` + +Distributes and applies a force to all points. A force is time dependent and meant to be applied every physics update. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SoftBody3D_method_apply_central_impulse: + +.. rst-class:: classref-method + +|void| **apply_central_impulse**\ (\ impulse\: :ref:`Vector3`\ ) :ref:`🔗` + +Distributes and applies an impulse to all points. + +An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise). + +.. rst-class:: classref-item-separator + +---- + +.. _class_SoftBody3D_method_apply_force: + +.. rst-class:: classref-method + +|void| **apply_force**\ (\ point_index\: :ref:`int`, force\: :ref:`Vector3`\ ) :ref:`🔗` + +Applies a force to a point. A force is time dependent and meant to be applied every physics update. + +.. rst-class:: classref-item-separator + +---- + +.. _class_SoftBody3D_method_apply_impulse: + +.. rst-class:: classref-method + +|void| **apply_impulse**\ (\ point_index\: :ref:`int`, impulse\: :ref:`Vector3`\ ) :ref:`🔗` + +Applies an impulse to a point. + +An impulse is time-independent! Applying an impulse every frame would result in a framerate-dependent force. For this reason, it should only be used when simulating one-time impacts (use the "_force" functions otherwise). + +.. rst-class:: classref-item-separator + +---- + .. _class_SoftBody3D_method_get_collision_exceptions: .. rst-class:: classref-method diff --git a/classes/class_translationdomain.rst b/classes/class_translationdomain.rst index 9f52c1a1e..dfe1f6f6c 100644 --- a/classes/class_translationdomain.rst +++ b/classes/class_translationdomain.rst @@ -31,6 +31,8 @@ Properties .. table:: :widths: auto + +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------+-----------+ + | :ref:`bool` | :ref:`enabled` | ``true`` | +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`pseudolocalization_accents_enabled` | ``true`` | +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------+-----------+ @@ -64,12 +66,16 @@ Methods +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`clear`\ (\ ) | +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :ref:`String` | :ref:`get_locale_override`\ (\ ) |const| | + +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Translation` | :ref:`get_translation_object`\ (\ locale\: :ref:`String`\ ) |const| | +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`pseudolocalize`\ (\ message\: :ref:`StringName`\ ) |const| | +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`remove_translation`\ (\ translation\: :ref:`Translation`\ ) | +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | |void| | :ref:`set_locale_override`\ (\ locale\: :ref:`String`\ ) | + +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`translate`\ (\ message\: :ref:`StringName`, context\: :ref:`StringName` = &""\ ) |const| | +---------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`translate_plural`\ (\ message\: :ref:`StringName`, message_plural\: :ref:`StringName`, n\: :ref:`int`, context\: :ref:`StringName` = &""\ ) |const| | @@ -84,6 +90,23 @@ Methods Property Descriptions --------------------- +.. _class_TranslationDomain_property_enabled: + +.. rst-class:: classref-property + +:ref:`bool` **enabled** = ``true`` :ref:`🔗` + +.. rst-class:: classref-property-setget + +- |void| **set_enabled**\ (\ value\: :ref:`bool`\ ) +- :ref:`bool` **is_enabled**\ (\ ) + +If ``true``, translation is enabled. Otherwise, :ref:`translate()` and :ref:`translate_plural()` will return the input message unchanged regardless of the current locale. + +.. rst-class:: classref-item-separator + +---- + .. _class_TranslationDomain_property_pseudolocalization_accents_enabled: .. rst-class:: classref-property @@ -284,6 +307,18 @@ Removes all translations. ---- +.. _class_TranslationDomain_method_get_locale_override: + +.. rst-class:: classref-method + +:ref:`String` **get_locale_override**\ (\ ) |const| :ref:`🔗` + +Returns the locale override of the domain. Returns an empty string if locale override is disabled. + +.. rst-class:: classref-item-separator + +---- + .. _class_TranslationDomain_method_get_translation_object: .. rst-class:: classref-method @@ -320,6 +355,22 @@ Removes the given translation. ---- +.. _class_TranslationDomain_method_set_locale_override: + +.. rst-class:: classref-method + +|void| **set_locale_override**\ (\ locale\: :ref:`String`\ ) :ref:`🔗` + +Sets the locale override of the domain. + +If ``locale`` is an empty string, locale override is disabled. Otherwise, ``locale`` will be standardized to match known locales (e.g. ``en-US`` would be matched to ``en_US``). + +\ **Note:** Calling this method does not automatically update texts in the scene tree. Please propagate the :ref:`MainLoop.NOTIFICATION_TRANSLATION_CHANGED` signal manually. + +.. rst-class:: classref-item-separator + +---- + .. _class_TranslationDomain_method_translate: .. rst-class:: classref-method diff --git a/classes/class_viewport.rst b/classes/class_viewport.rst index 910709fc7..aef32a221 100644 --- a/classes/class_viewport.rst +++ b/classes/class_viewport.rst @@ -566,11 +566,19 @@ Do not perform any antialiasing in the full screen post-process. Use fast approximate antialiasing. FXAA is a popular screen-space antialiasing method, which is fast but will make the image look blurry, especially at lower resolutions. It can still work relatively well at large resolutions such as 1440p and 4K. +.. _class_Viewport_constant_SCREEN_SPACE_AA_SMAA: + +.. rst-class:: classref-enumeration-constant + +:ref:`ScreenSpaceAA` **SCREEN_SPACE_AA_SMAA** = ``2`` + +Use subpixel morphological antialiasing. SMAA may produce clearer results than FXAA, but at a slightly higher performance cost. + .. _class_Viewport_constant_SCREEN_SPACE_AA_MAX: .. rst-class:: classref-enumeration-constant -:ref:`ScreenSpaceAA` **SCREEN_SPACE_AA_MAX** = ``2`` +:ref:`ScreenSpaceAA` **SCREEN_SPACE_AA_MAX** = ``3`` Represents the size of the :ref:`ScreenSpaceAA` enum.